@charset "utf-8";

#root {
    width: 100%;
    max-width: 1920px;
    margin: 0 auto;
    position: relative;
}

body {
    width: 100%;
    -webkit-text-size-adjust: ('none' '100%' 'auto');
    word-wrap: break-word;
    overflow-wrap: break-word;
    background-color: #F2EDE6;
}

.telWrap {
    color: inherit;
}

.telWrap:hover {
    color: inherit;
    text-decoration: underline;
}

.hidden {
    overflow: hidden;
}

.opacity_hover:hover {
    opacity: .7;
}

.cursol-pointer {
    cursor: pointer;
}

.fontA {
  font-family: "Shippori Mincho B1", serif;
  /*font-weight: 400;*/
  /*font-weight: 500;*/
}

.fontB {
  font-family: "Cormorant Garamond", serif;
  /*font-weight: 400;*/
  /*font-weight: 500;*/
}

.inLink>a:hover {
    text-decoration: underline;
    color: #3C352C;
}

.paddingWr01 {
    padding: 0 15px;
}

.comBg01 {
    position: relative;
    background-color: #483E35;
}

.comBg01:before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: url(/system_panel/uploads/images/bg_mask_color.png)no-repeat;
    background-size: cover;
}

.comBg01>div {
    position: relative;
    z-index: 3;
}

.upDecoFrame {
    position: absolute;
    z-index: 2;
    left: 0;
    right: 0;
    top: -1px;
    width: 100%;
}

.downDecoFrame {
    position: absolute;
    z-index: 2;
    left: 0;
    right: 0;
    bottom: -1px;
    width: 100%;
}

.pageId {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 100%;
    height: 100px;
    z-index: -9;
}

/*---- 新TEL.js用 --------------------------------------------------------------*/

/* 電話番号定数のチラつき対策 */
p.tel,
p.fax,
a[data-cke-saved-href^="tel:電話番号"] {
    opacity: 0;
}

.gjs-dashed p.tel,
.gjs-dashed p.fax,
.gjs-dashed a[data-cke-saved-href^="tel:電話番号"] {
    opacity: 1;
}

/*---------------------------------------------------------------------------*/

/*---------------------------------------------------------------------------*/

/*-- 共通パーツ --------------------------------------------------------------*/

.comBtn01 {
    display: inline-flex;
    align-items: center;
    font-size: 18px;
    font-weight: 500;
    position: relative;
    color: #3C352C;
    letter-spacing: 0.05em;
}

.comBtn01:after {
    content: "";
    width: 50px;
    height: 50px;
    display: flex;
    margin-left: 20px;
    background-size: contain;
    justify-content: center;
    align-items: center;
    border-radius: 50%;
    transition: all .3s;
    border: 1px solid #3C352C;
}

.comBtn01:hover:after {
    transition: all .3s;
}

.comBtn01:before {
    content: "";
    background: url(/system_panel/uploads/images/com_arrow_icon01.svg)no-repeat;
    width: 15px;
    height: 4px;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 18px;
    display: block;
    margin: auto;
    transition: .3s;
    letter-spacing: 0.05em;
}

.comBtn01:hover:before {
    right: 12px;
    transition: .3s;
}

.comBtn01:hover {
    color: #3C352C;
}

.comBtn02 {
    display: inline-flex;
    align-items: center;
    font-size: 18px;
    font-weight: 500;
    position: relative;
    color: #fff;
    letter-spacing: 0.05em;
}

.comBtn02:after {
    content: "";
    width: 50px;
    height: 50px;
    display: flex;
    margin-left: 20px;
    background-size: contain;
    justify-content: center;
    align-items: center;
    border-radius: 50%;
    transition: all .3s;
    border: 1px solid #fff;
}

.comBtn02:hover:after {
    transition: all .3s;
}

.comBtn02:before {
    content: "";
    background: url(/system_panel/uploads/images/com_arrow_icon02.svg)no-repeat;
    width: 15px;
    height: 4px;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 18px;
    display: block;
    margin: auto;
    transition: .3s;
    letter-spacing: 0.05em;
}

.comBtn02:hover:before {
    right: 12px;
    transition: .3s;
}

.comBtn02:hover {
    color: #fff;
}

.backBtn01 {
    display: inline-flex;
    align-items: center;
    font-size: 18px;
    font-weight: 500;
    position: relative;
    color: #3C352C;
    letter-spacing: 0.05em;
}

.backBtn01:before {
    content: "";
    width: 50px;
    height: 50px;
    display: flex;
    margin-right: 20px;
    background-size: contain;
    justify-content: center;
    align-items: center;
    border-radius: 50%;
    transition: all .3s;
    border: 1px solid #3C352C;
}

.backBtn01:hover:before {
    transition: all .3s;
}

.backBtn01:after {
    content: "";
    background: url(/system_panel/uploads/images/com_arrow_icon01.svg)no-repeat;
    width: 15px;
    height: 4px;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 18px;
    display: block;
    margin: auto;
    transition: .3s;
    transform: scale(-1, 1);
}

.backBtn01:hover:after {
    left: 12px;
    transition: .3s;
}

.backBtn01:hover {
    color: #3C352C;
}

.titEn01 {
    font-family: "Cormorant Garamond", serif;
    font-size: 48px;
    font-weight: 500;
    letter-spacing: 0.05em;
    line-height: 1.203em;
}

.titJa01 {
    margin-top: 4px;
    line-height: 1.5em;
    font-size: 14px;
    font-weight: 400;
}

.text01 {
    font-size: 15px;
    font-weight: 400;
    line-height: 1.778em;
}

.text02 {
    font-size: 14px;
    font-weight: 400;
    line-height: 2em;
}

.title01 {
    font-size: 16px;
    font-weight: 500;
    letter-spacing: 0.05em;
    line-height: 1.571em;
}

.title01 strong {
    background: linear-gradient(120deg, #ab8f42 0%, #d9c27a 50%, #ab8f42 65%, #8e7330 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    font-size: 25px;
    font-weight: 400;
    display: inline-block;
    line-height: 1.5em;
}

/*-- ****** -----------------------------------------------------------------*/
/*-- 共通カラー --------------------------------------------------------------*/

.colorWhite {
    color: #fff;
}

/*-- inCover -----------------------------------------------------------------*/



/*-- ****** -----------------------------------------------------------------*/
/*-- パンくずリスト ----------------------------------------------------------*/


/*-- ****** -----------------------------------------------------------------*/
/*-- coverTxt ---------------------------------------------------------------*/



/*---------------------------------------------------------------------------*/
/*-- header -----------------------------------------------------------------*/

.header {
    max-width: 1920px;
    width: 100%;
    margin: 0 auto;
    position: absolute;
    z-index: 999;
    top: 0;
    left: 0;
    right: 0;
}

.hBoxWr {
    padding: 15px;
    position: relative;
}

.hBoxWr:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: -1;
    background: #4B433A;
    background: linear-gradient(
        180deg,
        rgba(75, 67, 58, 1) 0%,
        rgba(75, 67, 58, 0.93) 10%,
        rgba(75, 67, 58, 0.68) 30%,
        rgba(91, 85, 78, 0.3) 70%,
        rgba(91, 85, 78, 0) 100%
      );
    opacity: 0.5;
}

.hBox {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 20px;
    position: relative;
}

.hPcLogo {
    max-width: 100px;
    width: 100%;
    margin: 0 auto;
    filter: brightness(0) invert(1);
}

.hNavWr {
    flex: 1;
    display: none;
    align-items: center;
    justify-content: flex-end;
    gap: 5px 20px;
    flex-wrap: wrap;
}

.hNavLink {
    font-size: 14px;
    font-weight: 500;
    letter-spacing: 0.05em;
    color: #fff;
    transition: all .4s;
}

.hNavLink:hover {
    color: #fff;
    opacity: 0.8;
}

/*--is-animation--*/

.header.clone.is-animation {
    top: 0;
    transition: all .5s;
    visibility: visible;
    opacity: 1;
}

.header.clone {
    position: fixed !important;
    top: -100px;
    transition: all .5s;
    visibility: hidden;
    opacity: 0;
    background: #EEEAE5;
}

.header.clone .hBoxWr:before {
    display: none;
}

.header.clone .hNavLink {
    color: #4B433A;
}

.header.clone .hNavLink:hover {
    color: #4B433A;
}

.header.clone .hPcLogo {
    filter: unset;
}

/*スマホ時のナビ*/

.spNavBlock {
    flex: 1;
    display: flex;
}

.spNav {
    max-width: calc(100% - 70px);
    width: 100%;
    height: 70px;
    position: fixed;
    bottom: 0;
    left: 0;
    z-index: 999999;
}

.spNavArea {
	width: 100%;
	height: 100%;
	display: flex;
	background: #4B433A;
}

.spNavConte-l {
	border-right: 1px solid #fff;
	width: 50%;
	border-top: 1px solid #FFF;
}


.spNavConte-m {
	width: 33.3%;
	background: #485053;
}

.spNavLink {
	padding: 11px 5px 5px;
	width: 100%;
	height: 100%;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}

.spFa {
	font-size: 23px;
	color: #fff;
}


.spNavBtnBar {
	max-width: 36px;
	height: 26px;
	width: 100%;
	position: relative;
}

.spNavBtnTxt {
	margin: 5px auto 0;
	font-size: 12px;
	color: #fff;
}

.spNavLinkTxt {
	margin: 5px auto 0;
	font-size: 8px;
	color: #fff;
	font-weight: 500;
}

.spHamBox {
	padding: 5px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	position: fixed;
	width: 70px;
	height: 70px;
	bottom: 0;
	right:0;
	cursor: pointer;
	z-index: 99999999;
	border-top: 1px solid #FFF;
	background: #4B433A;
}


.spHamBox .spNavBtnBarItem:nth-of-type(2) {
	top: 12px;
}

.spHamBox .spNavBtnBarItem:nth-of-type(3) {
	bottom: 0;
}

.open.spHamBox .spNavBtnBarItem:nth-of-type(1) {
    transform: translateY(12px) rotate(225deg);
}

.open.spHamBox .spNavBtnBarItem:nth-of-type(2) {
	opacity: 0;
}

.open.spHamBox .spNavBtnBarItem:nth-of-type(3) {
    transform: translateY(-12px) rotate(-225deg);
}

.open .spNavBtnBarItem {
	transition: ease .5s;
}

.open .spNavBtnBarItem:nth-of-type(1) {
	transform: translateY(8px) rotate(-45deg);
}

.open .spNavBtnBarItem:nth-of-type(2) {
	opacity: 0;
}

.open .spNavBtnBarItem:nth-of-type(3) {
	transform: translateY(-6px) rotate(45deg);
}

.spNavBtnBarItem {
	width: 100%;
	height: 2px;
	right: 0;
	background: #FFF;
	border-radius: 3px;
	position: absolute;
	transition: ease .5s;
}

.spNavMainBtn {
    right: 0;
    bottom: 0;
    position: fixed;
    display: flex;
    z-index: 99999;
    background: #161616;
    width: 70px;
    height: 70px;
}

.open .spNavBtnBarItem {
	transition: ease .5s;
}

.spMenu {
    margin: auto;
    padding: 0 15px;
    max-width: 1920px;
    width: 100%;
    position: fixed;
    right: -100%;
    top: 0;
    z-index: 98;
    transition: ease .5s;
    background-color: #fff;
    background-image: url(/system_panel/uploads/images/f_bg.jpg);
    background-attachment: scroll;
    background-repeat: no-repeat;
    background-position: center top;
    background-size: cover;
    display: block;
}

.spMenu.open {
	right: 0;
}

.spMenuArea {
	width: 100%;
	height: 100%;
}

.spMenuConte {
    padding: 120px 0;
    width: 100%;
    height: 100%;
    overflow-y: scroll;
    -ms-overflow-style: none;
    display: flex;
    align-items: flex-start;
}

.hSpNavBox {
    max-width: 375px;
    width: 100%;
    margin: 0 auto 0 auto;
}

.spMenuConte::-webkit-scrollbar {
	display:none;
}

.spMenuBx {
    width: 100%;
    max-width: 320px;
    margin: 0 auto;
}

.hSpNavBox {
    max-width: 375px;
    width: 100%;
    margin: 0 auto 0 auto;
}

.spNavLinkIconBx {
    max-width: 20px;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.spMenuLink {
    font-size: 18px;
    font-weight: 400;
    line-height: 1.5em;
    color: #3C352C;
    transition: all .5s;
    display: block;
    padding: 12px 0;
}

.spMenuLink:hover {
    color: #3C352C;
    text-decoration: underline;
}

.spNavConte-pageWeb {
    background: #9A7725;
    background: linear-gradient(120deg, rgba(154, 119, 37, 1) 0%, rgba(190, 158, 58, 1) 25%, rgba(227, 198, 79, 1) 60%, rgba(217, 183, 77, 1) 85%, rgba(206, 167, 74, 1) 100%);
    position: relative;
}

.spNavConte-pageWeb>a {
    position: relative;
    z-index: 3;
}

.spNavConte-pageWeb:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1;
    background-color: #B1B1B1;
    opacity: 0.1;
}

.spMenuListWr {
    border-bottom: 1px solid rgb(60 53 44 / 50%);
}

/*-- header-サイド -----------------------------------------------------------------*/

.sideScrollNavBox {
    position: fixed;
    z-index: 100;
    bottom: 20vh;
    right: 0;
    margin: auto;
    width: 60px;
    height: 123px;
    padding: 0;
    transition: all .5s;
    display: none;
}

.sideScrollNavBox.is-footer-reached {
    visibility: hidden;
    opacity: 0;
}

.sideScrollNavBox .sideScrollNavBtn + .sideScrollNavBtn {
  margin-top: 8px;
}

.sideScrollNavBtn {
  position: relative;
  width: 238px;
  height: 58px;
  transition: all 0.3s ease;
  border-right: none;
  border-radius: 30px 0 0 30px;
  overflow: hidden;
}

.sideScrollNavBox .sideScrollNavBtn:hover {
  transform: translateX(-175px);
}

.sidoLinkBtn {
    display: flex;
    align-items: center;
    height: 100%;
    text-decoration: none;
}

.sideScrollNavBox .icon {
  min-width: 80px;
  width: 80px;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}
.sideScrollNavBox .sidoIcon01 img {
  max-width: 30px;
  display: block;
}
.sideScrollNavBox .sidoTitle01 p {
  color: #fff;
  font-size: 18px;
  line-height: 1;
  font-weight: 500;
  white-space: nowrap;
  margin: 0;
}

.sideScrollNavTel {
    background-color: #4B433A;
    padding: 5px 5px 5px 32px;
}

.sideScrollNavWeb .sidoLinkBtn {
    background: #9A7725;
    background: linear-gradient(120deg, rgba(154, 119, 37, 1) 0%, rgba(190, 158, 58, 1) 25%, rgba(227, 198, 79, 1) 60%, rgba(217, 183, 77, 1) 85%, rgba(206, 167, 74, 1) 100%);
    padding: 5px 5px 5px 29px;
}

.sideScrollNavWeb .sidoLinkBtn:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1;
    background-color: #B1B1B1;
    opacity: 0.1;
}

.sidoIcon01,.sidoIcon02 {
    position: relative;
    z-index: 2;
}

.sidoTitle01,.sidoTitle02 {
    position: relative;
    z-index: 2;
    font-size: 18px;
    font-weight: 500;
    letter-spacing: 0.05em;
    color: #fff;
    flex: 1;
}

.sidoIcon01 {
    width: 12px;
    height: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 19.5px;
}

.sidoIcon02 {
    width: 16px;
    height: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 19.5px;
}

/*---------------------------------------------------------------------------*/
/*-- footer -----------------------------------------------------------------*/

.footer {
    max-width: 1920px;
    width: 100%;
    margin: 0 auto;
    position: relative;
    padding: 60px 0 40px;
}

.footer .fArchDeco {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
}

.fInner {
    position: relative;
    z-index: 1;
    max-width: 1440px;
    width: 100%;
    margin: 0 auto;
}

.copyright {
    font-size: 13px;
    font-weight: 400;
    letter-spacing: 0.05em;
    line-height: 1.46em;
    margin-top: 40px;
    text-align: right;
}

.fReserveBtnWeb {
    background: #9A7725;
    background: linear-gradient(120deg, rgba(154, 119, 37, 1) 0%, rgba(190, 158, 58, 1) 25%, rgba(227, 198, 79, 1) 60%, rgba(217, 183, 77, 1) 85%, rgba(206, 167, 74, 1) 100%);
    position: relative;
    margin-top: 25px;
}

.fReserveBtnWeb:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1;
    background-color: #B1B1B1;
    opacity: 0.1;
}

.fReserveBtn {
    width: 100%;
    border-radius: 39px;
    overflow: hidden;
    height: 67px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 5px;
    gap: 10px;
    font-size: 18px;
    font-weight: 500;
    letter-spacing: 0.05em;
    transition: all .5s;
}

.fReserveBtnIcon01 {
    max-width: 15.34px;
    width: 100%;
    margin-top: 4px;
}

.fReserveBtnIcon02 {
    max-width: 19.68px;
    width: 100%;
    margin-top: 4px;
}

.fReserveBtnTel {
    background-color: #4B433A;
}

.fReserveBtn>p {
    color: #fff;
}

.fReserveBtnWeb:hover {
    opacity: 0.8;
}

.fReserveBtnSet {
    max-width: 280px;
    width: 100%;
}

.fReserveLinkSns:before {
    content: "";
    width: 44px;
    height: 1px;
    background-color: #3C352C;
    display: block;
}

.fReserveLinkSns {
    display: inline-flex;
    align-items: center;
    gap: 16px;
    font-size: 18px;
    font-weight: 500;
    letter-spacing: 0.05em;
    color: #3C352C;
}

.fReserveRight {
    display: flex;
    align-items: center;
    justify-content: center;
    max-width: 590px;
    width: 100%;
    gap: 30px;
    flex-wrap: wrap;
}

.fReserveLeft {
    flex: 1;
    max-width: 590px;
    width: 100%;
}

.fReserveWr {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 40px;
    border-bottom: 0.5px solid #3C352C;
    padding-bottom: 40px;
    flex-direction: column;
}

.fReserveLinkSns>p {
    color: #3C352C;
    transition: all .5s;
}

.fReserveLinkSns:hover>p {
    opacity: 0.5;
    transition: all .5s;
}

.fNavLink:hover {
    color: #3C352C;
    text-decoration: underline;
}

.fReserveTextArea {
    text-align: left;
}

/*---------------------------------------------------------------------------*/

/*---topMain----------------------------------------------*/



/*----*/



/*----kasou------------------------------------------------*/

.inBalanceImg01>img {
    justify-content: center;
    align-items: center;
    position: absolute;
    display: flex;
    top: 0;
    right: 0;
    max-height: 100%;
    height: auto;
    max-width: 100%;
    width: auto;
    bottom: 0;
    left: 0;
    margin: auto;
}

.objectFitImg {
    justify-content: center;
    align-items: center;
    position: absolute;
    display: flex;
    top: 0;
    right: 0;
    max-height: 100%;
    height: 100%;
    max-width: 100%;
    width: 100%;
    bottom: 0;
    left: 0;
    margin: auto;
    object-fit: cover;
}


a[data-lightbox] {
    position: relative;
    display: block;
}

a[data-lightbox]:before {
    content: "";
    width: 100%;
    height: 100%;
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    background: rgba(255, 255, 255, 0.3);
    opacity: 0;
    transition: .5s;
}

a[data-lightbox]:hover:before {
    opacity: 1;
    transition: .5s;
}

.galleryImg01>a[data-lightbox] {
    padding-top: 100%;
}

.galleryImg01>a[data-lightbox] img {
    max-height: 100%;
    height: 100%;
    max-width: 100%;
    width: 100%;
    object-fit: cover;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}

/*---form--*/

.formTh {
    padding: 15px 15px 15px 15px;
    background-color: #485053;
    color: #fff;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.formTd {
    padding: 15px 15px 15px 15px;
    background: #fff;
    color: #555;
}

.formRow {
    border: 1px solid #ccc;
}

.contTable {
    border: 1px solid #ccc;
}

.requiredText {
    padding: 1px 4px 1px 4px;
    color: #fff;
    font-size: 14px;
    background-color: #ff1f1f;
}

.privacyBox {
    border: 1px solid #ccc;
    padding: 15px 2% 15px 2%;
    width: 100%;
    overflow-y: scroll;
    background: #fff;
    height: 250px;
}

/*----*/

.compBaseTb {
    border: 1px solid #ccc;
}

.compBaseTr {
    border: 1px solid #ccc;
}

.compBaseTh {
    padding: 15px;
    background-color: #555;
    color: #fff;
}

.compBaseTd {
    padding: 15px;
    background: #fff;
}

/*----*/

.salonTr {
    border-bottom: 1px solid rgb(60 53 44 / 50%);
    display: grid;
    grid-template-columns: 1fr;
    font-weight: 400;
    line-height: 1.5em;
    align-items: center;
    gap: 10px;
    font-size: 16px;
    padding: 12px 0;
}

.salonTh {
    font-weight: 500;
}

.salonTdSubTextList {
    display: flex;
    align-items: baseline;
    margin: 4px 0 0 0;
    font-size: 13px;
    line-height: 1.5em;
}

.salonTb {
    margin-top: 36px;
}

.salonLogo {
    max-width: 140px;
    width: 100%;
    margin: 0 auto;
}

.salonFlexLeft {
    width: 80%;
}

.salonFlexRight {
    width: 100%;
    margin-top: 40px;
}

.salonFlexBox {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-direction: column;
}

.fReserveBtn.fReserveBtnWeb.salonBtn {
    margin: 0;
    font-size: 18px;
    height: 67px;
}

.salonLinkSetBox {
    display: flex;
    align-items: center;
    gap: 20px 30px;
    margin-top: 36px;
    flex-wrap: wrap;
    justify-content: center;
}

.salonBtnSet01 {
    max-width: 280px;
    width: 100%;
}

.salonBtnSet02 .inLinkSnsList:first-child {
    margin-top: 0;
}

.salonBtnSet02 .inLinkSnsList {
    margin-top: 15px;
}

/*Staff---*/

.staffName {
    font-family: "Cormorant Garamond", serif;
    font-size: 40px;
    font-weight: 500;
    letter-spacing: 0.05em;
    line-height: 1.203em;
}

.staffTitleEn {
    font-weight: 500;
    font-size: 25px;
    line-height: 1.2em;
    background: linear-gradient(120deg, #ab8f42 0%, #d9c27a 50%, #ab8f42 65%, #8e7330 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    display: inline-block;
}

.staffTitleEnBox {
    display: flex;
    align-items: baseline;
    gap: 10px;
}

.staffTitleEnBox:after {
    content: "";
    flex: 1;
    height: 1px;
    background: linear-gradient(120deg, #ab8f42 0%, #d9c27a 50%, #ab8f42 65%, #8e7330 100%);
}

.concernPageLink {
    background-image: url(/system_panel/uploads/images/com_bg02.png);
    background-position: left top;
    background-attachment: scroll;
    background-repeat: no-repeat;
    background-size: cover;
    padding: 15px 15px 40px;
    display: block;
    position: relative;
    transition: all .4s;
    min-width: 0;
}

.concernPageLinkTextArea {
	margin: 8px 0 0;
}

.concernPageLinkTextAreaList {
    display: flex;
    align-items: baseline;
    font-size: 10px;
    line-height: 1.5em;
    margin: 4px 0 0 0;
}

.concernPageLinkTextAreaList:first-child {
	margin: 0;
}

.concernPageLinkListBox {
    color: #3C352C;
}

.concernPageLinkTextAreaDot {
    color: #A5863E;
    margin: 0 4px 0 0;
}

.concernPageLinkListTit {
    font-size: 16px;
    font-weight: 500;
    letter-spacing: 0.05em;
    line-height: 1.571em;
    padding-bottom: 12px;
    border-bottom: 0.5px solid #948E88;
    margin-bottom: 20px;
}

.concernPageLinkListTit br {
	display: block;
}

.concernPageLink:before {
    content: "";
    position: absolute;
    background-color: #948E88;
    width: 1px;
    height: 50px;
    bottom: -30px;
    left: 0;
    right: 0;
    margin: auto;
}

.concernPageLinkWr {
	display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 50px 11px;
}

.concernPageLink:hover {
    transform: translateY(8px);
}

.concernContentsNumber {
    font-weight: 500;
    font-size: 50px;
    line-height: 1.2em;
}

.concernContentsNumberSet {
    display: flex;
    align-items: baseline;
    gap: 10px;
    margin-bottom: 10px;
}

.concernContentsNumberSet:after {
    content: "";
    flex: 1;
    height: 1px;
    background-color: #3C352C;
}

.concernContentsSubText {
	position: relative;
	display: inline-flex;
	align-items: center;
	font-size: 14px;
	font-weight: 500;
	margin-bottom: 20px;
	color: #9A7725;
}

.concernContentsSubText::before {
	content: "";
	display: block;
	width: clamp(30px, 26.602px + 0.906vw, 44px);
	height: 1px;
	background: #9A7725;
	margin: 0 8px 0 0;
}

/* .concernContentsSubText {
	position: relative;
	display: inline-block;
	padding: 0 40px;
	font-size: 14px;
	font-weight: 500;
	margin-bottom: 20px;
} */

/* .concernContentsSubText:before, .concernContentsSubText:after {
  content: '';
  position: absolute;
  top: 50%;
  display: inline-block;
  width: 35px;
  height: 1px;
  background-color: #3C352C;
  -webkit-transform: rotate(-60deg);
  transform: rotate(-60deg);
}

.concernContentsSubText:before {
  left:0;
}

.concernContentsSubText:after {
  right: 0;
} */

.concernMenuTitle {
    font-size: 22px;
    font-weight: 500;
    letter-spacing: 0.05em;
    flex: 1;
    line-height: 1.2em;
    border-bottom: 1px dashed #ccc;
    padding-bottom: 8px;
    margin-bottom: 12px;
}

.concernMenuTitle strong {
    font-size: 18px;
    font-weight: 500;
}

.concernMenuBox {
    border-bottom: 1px solid #ccc;
    padding-bottom: 15px;
    display: block;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}

.concernMenuMoneySet {
    display: flex;
    align-items: center;
    gap: 10px;
}

.concernMenuMoney {
    font-size: 18px;
    font-weight: 500;
}

.concernMenuMoney>strong {
    font-size: 15px;
    font-weight: 500;
}

.concernMenuMoneyCate {
    border: 1px solid #9a7725;
    background-color: #9a7725;
    color: #f7f3ed;
    padding: 5px 18px 5px 18px;
    font-size: 14px;
    letter-spacing: 0.05em;
    line-height: 1.2em;
}


/*---menu---*/

.inContentsWr {
    padding: 0 15px 0;
    position: relative;
}

.inContentsWr:before {
    content: "";
    position: absolute;
    width: 98%;
    height: 100%;
    left: 0;
    top: -40px;
    background-color: #483E35;
    border-radius: 0 30px 30px 0;
    opacity: 0.08;
    filter: blur(6px);
}

.inContentsDeco {
    content: "";
    position: absolute;
    width: 70.16%;
    height: 100%;
    right: 0;
    top: 0;
    bottom: 0;
    background-color: #483E35;
    border-radius: 280px 0 0 280px;
    overflow: hidden;
}

.inContentsDeco:before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: url(/system_panel/uploads/images/bg_mask_color.png)no-repeat;
    background-size: cover;
}

.inContentsDeco div {
    position: relative;
    z-index: 3;
}

.inContentsDecoPc {
    display: none;
}

.inContentsDecoSp {
    display: block;
}

.inContentsDeco.inContentsDecoSp {
    width: 102%;
    right: -15px;
    border-radius: 30px 0 0 30px;
}

.inContentsInner {
    flex-direction: column;
    max-width: 1440px;
    width: 100%;
    margin: 0 auto;
    position: relative;
    z-index: 4;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
}

.inContentsLeft {
    max-width: 338px;
    width: 100%;
    margin: -20px 0 0 0;
}

.inContentsRight {
    flex: 1;
    padding: 30px 0 30px 7%;
    color: #fff;
    width: 100%;
    position: relative;
    margin: 20px 0 0;
}

.inContentsDecoEn {
    line-height: 0.6em;
    font-size: 12vw;
    color: #fff;
    opacity: 0.44;
}

.inContentsDecoEnBox {
    position: absolute !important;
    bottom: 0;
    right: 5%;
}

.menuMainListCate {
    background: linear-gradient(120deg, rgba(154, 119, 37, 1) 0%, rgba(190, 158, 58, 1) 25%, rgba(227, 198, 79, 1) 60%, rgba(217, 183, 77, 1) 85%, rgba(206, 167, 74, 1) 100%);
    color: #FFF;
    padding: 5px 18px 5px 18px;
    font-size: 14px;
    letter-spacing: 0.05em;
    line-height: 1.2em;
    display: inline-block;
}

.menuMainListName {
    font-size: 22px;
    font-weight: 500;
    letter-spacing: 0.05em;
}

.menuMainListMoney {
    font-size: 22px;
    font-weight: 500;
    letter-spacing: 0.05em;
    text-align: right;
}

.menuMainListWr {
    border-bottom: 1px solid #fff;
    padding-bottom: 12px;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 15px;
}

.menuMainListTitSet {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 15px;
}

.menuMainBox {
    max-width: 582px;
    width: 100%;
}

.menuItemTitSet {
    border-bottom: 1px solid #3C352C;
    padding-bottom: 10px;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 10px;
}

.menuItemTit {
    font-size: 22px;
    font-weight: 500;
    letter-spacing: 0.05em;
    flex: 1;
}

.menuTaxText {
    font-size: 15px;
    font-weight: 500;
}

.menuItemContents {
    margin-top: 32px;
}

.menuItemListBox {
    padding-bottom: 12px;
    margin-top: 12px;
    display: flex;
    align-items: flex-start;
    justify-content: flex-end;
    border-bottom: 1px solid #ccc;
    gap: 5px 15px;
    flex-wrap: wrap;
}

.menuItemListMoneyList {
    display: flex;
    align-items: baseline;
    justify-content: flex-end;
    font-size: 18px;
}

.menuItemListTit {
    font-size: 18px;
    font-weight: 500;
}

.menuItemListMoneyCate {
    font-size: 15px;
    margin-right: 4px;
}

.menuItemListMoneyArrow {
    margin: 0 4px;
}

.menuItemListMoneyText2 {
    font-size: 20px;
}

.menuItemListTitBox {
    flex: auto;
}

.menuItemListTextList {
    margin: 8px 0 0 0;
    font-size: 15px;
    line-height: 1.5em;
}

.menuItemGridWr {
    grid-template-columns: repeat(1, 1fr);
    display: grid;
    gap: 50px 50px;
    align-items: flex-start;
}

.menuItemGridBox {
    grid-template-columns: repeat(1, 1fr);
    display: grid;
    gap: 50px;
}

/*-----------------------------------------------------------
ページャー
-----------------------------------------------------------*/

.webgene-pagination {
    width: 100%;
    margin: 50px 0 0;
}

.webgene-pagination > ul{
    padding: 0;
    display: flex;
    justify-content: center;
    margin: 0 auto;
    gap: 10px;
}

.webgene-pagination > ul > li{
    display: flex;
}

.webgene-pagination > ul > li {
    height: 35px;
    width: 100%;
    max-width: 35px;
    list-style: none;
    display: flex;
    justify-content: center;
    align-items: center;
    overflow: hidden;
    border: solid 1px #707070;
    border-radius: 50%;
    font-size: 16px;
    font-weight: 400;
}

.webgene-pagination > ul > li.selected > a{
    color: #fff;
    background: #4B433A;
    cursor: inherit;
}

.webgene-pagination > ul > li.selected > a:hover {
    color: #fff;
    background-color: #4B433A;
}

.webgene-pagination > ul > li > a{
    width: 100%;
    height: 100%;
    width: 100%;
    color: var(--base-body-color);
    display: flex;
    justify-content: center;
    align-items: center;
}
.webgene-pagination > ul > li > a:hover{
    color:#fff;
    background-color: #4B433A;
    text-decoration: none;
}

.next > a {
    font-size: 0;
    padding-top: 0 !important;
}

.prev > a{
    font-size: 0;
    padding-top: 0 !important;
}

.next > a:before {
    content: "";
    background: url(/system_panel/uploads/images/com_arrow_icon01.svg) no-repeat;
    background-position: center;
    background-size: contain;
    width: 20px;
    height: 10px;
}

.prev > a:before {
    content: "";
    background: url(/system_panel/uploads/images/com_arrow_icon01.svg) no-repeat;
    background-position: center;
    background-size: contain;
    width: 20px;
    height: 8px;
    transform: scaleX(-1);
}

.webgene-pagination > ul > .prev > a:hover,
.webgene-pagination > ul > .next > a:hover{
    background-color: #4B433A !important;
}

.webgene-pagination > ul > .prev > a:hover:before,
.webgene-pagination > ul > .next > a:hover:before{
    filter: brightness(0) invert(1);
}

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (min-width:375px) {

    /* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
    /* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

.spNavLinkTxt {
	font-size: 10px;
}

    /* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

}

/* min-width: 375px ここまで */

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (min-width:414px) {

    /* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
    /* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */


.title01 {
    font-size: 18px;
}

.title01 strong {
    font-size: 28px;
}


    /* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

}

/* min-width: 414px ここまで */

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (min-width:544px) {

    /* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
    /* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

.footer {
    padding: 100px 0 40px;
}

.title01 {
    font-size: 20px;
}

.title01 strong {
    font-size: 35px;
}

.spNavLinkTxt {
	font-size: 12px;
}

.salonTr {
    grid-template-columns: 110px 1fr;
}

.concernPageLinkListTit {
    font-size: 16px;
}

.concernPageLinkTextArea {
	margin: 12px 0 0;
}

.concernPageLinkTextAreaList {
    font-size: 14px;
}

.concernPageLinkListTit br {
	display: none;
}


.menuItemListTitBox {
    flex: 1;
}
  
.fReserveTextArea {
    text-align: center;
}

    /* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

}

/* min-width: 544px ここまで */

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (min-width:768px) {

    /* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
    /* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

.sideScrollNavBox {
    display: block;
}

.fReserveWr {
    padding-bottom: 80px;
}

.copyright {
    margin-top: 60px;
}
  
.spNav {
    display: none;
}
.spMenu {
    display: none;
}

.hBoxWr {
    padding: 15px 3.13%;
}

.hNavWr {
    display: flex;
}

.hPcLogo {
    max-width: 140px;
    margin: 0 auto 0 0;
}

.fReserveBtn {
    height: 77px;
    font-size: 20px;
}

.salonFlexBox {
    flex-direction: row;
    align-items: flex-start;
}

.salonFlexLeft {
    width: 39.32%;
}

.salonFlexRight {
    width: 54.09%;
    margin-top: 0;
}

.salonLogo {
    margin: 0 auto 0 0;
}

.salonLinkSetBox {
    margin-top: 36px;
    justify-content: flex-start;
}

.inContentsWr {
    padding: 80px 15px;
}

.inContentsDecoPc {
    display: block;
}

.inContentsDecoSp {
    display: none;
}

.inContentsInner {
    flex-direction: row;
}

.inContentsLeft {
    width: 30%;
}

.inContentsRight {
	padding: 0 0 0 14%;
	width: auto;
	margin: 0;
}

.inContentsDecoEn {
    font-size: 6vw;
}

.inContentsWr:before {
	width: 46.88%;
	top: 40px;
	border-radius: 0 280px 280px 0;
}

.menuItemGridWr {
    gap: 50px 50px;
}
  
/*-----------------------------------------------------------
ページャー
-----------------------------------------------------------*/

.webgene-pagination > ul > li{
    height: 45px;
    max-width: 45px;
    font-size: 18px;
}
	
    /* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

}

/* min-width: 768px ここまで */

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (min-width:992px) {

    /* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
    /* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

.fReserveRight {
    justify-content: space-between;
}

    /* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

}

/* min-width: 992px ここまで */

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */


/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (min-width:1024px) {

    /* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
    /* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

.text01 {
    font-size: 18px;
}

.text02 {
    font-size: 16px;
}

.titEn01 {
    font-size: 64px;
}

.titJa01 {
    font-size: 16px;
}
    
.fReserveWr {
    gap: 30px;
    flex-direction: row;
}

.fReserveLeft {
    flex: 1;
    max-width: 100%;
    width: auto;
}

.footer {
    padding: 140px 0 40px;
}

.title01 {
    font-size: 28px;
}

.title01 strong {
    font-size: 50px;
}

.hNavWr {
    gap: 5px 30px;
}

.hNavLink {
    font-size: 16px;
}

.hBoxWr {
    padding: 30px 3.13%;
}

.salonTr {
	padding: 16px 0;
    grid-template-columns: 160px 1fr;
}

.staffName {
    font-size: 64px;
}

.staffTitleEn {
    font-size: 30px;
}

.concernPageLinkWr {
    grid-template-columns: repeat(4, 1fr);
}

.concernMenuBox {
    display: flex;
    align-items: center;
}

.concernMenuTitle {
    font-size: 28px;
    border-bottom: none;
    padding-bottom: 0;
    margin-bottom: 0;
}

.concernContentsSubText {
  font-size: 18px;
  margin-bottom: 30px;
}

.concernMenuMoney {
    font-size: 25px;
}

.concernMenuMoney>strong {
    font-size: 16px;
}

.inContentsWr {
    padding: 120px 15px;
}

.menuItemGridWr {
    grid-template-columns: repeat(2, 1fr);
}

.menuItemListBox {
    padding-bottom: 16px;
    margin-top: 16px;
}
  
.fReserveTextArea {
    text-align: left;
}

    /* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

}

/* min-width: 1024px ここまで */

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */


/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (min-width:1400px) {

    /* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
    /* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

.fReserveRight {
    max-width: 753px;
}

.fReserveLinkSns {
    font-size: 22px;
}

.fReserveLinkSns:before {
    width: 64px;
}

.fReserveBtn {
    font-size: 22px;
}

.fReserveBtnSet {
    max-width: 316px;
    width: 100%;
}

.footer {
    padding: 180px 0 40px;
}

.hNavWr {
    gap: 5px 40px;
}

.salonTr {
    font-size: 18px;
}

.salonTdSubTextList {
    font-size: 15px;
}

.salonLinkSetBox {
    gap: 20px 60px;
}

.salonLogo {
    max-width: 180px;
}

.concernPageLinkWr {
    gap: 50px 30px;
}

.concernPageLinkListTit {
    font-size: 20px;
}

.concernPageLink {
    padding: 30px 30px 40px;
}

.menuItemGridWr {
    gap: 50px 90px;
}

    /* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

}

/* min-width: 1400px ここまで */

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (min-width:1600px) {

.concernPageLinkListTit {
	font-size: 22px;
}

.concernPageLinkTextAreaList {
	font-size: 16px;
}

}

/* min-width: 1600px ここまで */

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */