@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: #F8F8F7;
}

.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: "Cardo", serif;
    font-weight: 400;
}

.fontB {
    font-family: "Zen Kaku Gothic New", sans-serif;
}

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

.paddingWr01 {
    padding: 0 15px;
}

/*---- 新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 {
    max-width: 255px;
    width: 100%;
    height: 58px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    letter-spacing: 0.05em;
    font-weight: 500;
    color: #2F2019;
    position: relative;
    border: 1px solid #AF9F96;
    gap: 15px;
    padding: 15px 30px;
    transition: all .5s;
    font-size: clamp(14.00px, calc(0.26vw + 13.03px), 18.00px);
}

.comBtn01:after {
    content: "";
    width: 14.8px;
    height: 7.52px;
    background: url(/system_panel/uploads/images/arrow_icon.svg)no-repeat;
    background-position: center;
    background-size: contain;
    display: block;
    transition: all .5s;
}

.comBtn01:hover {
    color: #2F2019;
}

.comBtn01:hover:after {
    transform: translateX(8px);
    transition: all .5s;
}

.backBtn {
    max-width: 255px;
    width: 100%;
    height: 58px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: clamp(14.00px, calc(0.26vw + 13.03px), 18.00px);
    letter-spacing: 0.05em;
    font-weight: 500;
    color: #2F2019;
    position: relative;
    border: 1px solid #AF9F96;
    gap: 15px;
    padding: 15px 30px;
    transition: all .5s;
}

.backBtn:before {
    content: "";
    width: 14.8px;
    height: 7.52px;
    background: url(/system_panel/uploads/images/arrow_icon.svg)no-repeat;
    background-position: center;
    background-size: contain;
    display: block;
    transform: scaleX(-1);
    transition: all .5s;
}

.backBtn:hover {
    color: #2F2019;
}

.backBtn:hover:before {
    transform: scaleX(-1) translateX(8px);
    transition: all .5s;
}

.comSnsLinkText {
    font-size: clamp(10.00px, calc(0.13vw + 9.51px), 12.00px);
    color: #2F2019;
    white-space: nowrap;
}

.comSnsLink {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: 4px;
}

.comSnsLinkIcon {
    max-width: 36px;
    width: 100%;
  transition: transform 0.3s ease;
}

.comSnsLink:hover .comSnsLinkIcon {
  transform: scale(1.1);
}

.comBtn01.purpleBtn {
    color: #fff;
    border-color: #9283B0;
    background-color: #9283B0;
}

.comBtn01.purpleBtn:after {
    filter: brightness(0) invert(1);
}

/*-- 共通文字 --------------------------------------------------------------*/

.titEn01,.titEn02 {
    font-family: "Cardo", serif;
    font-weight: 400;
    opacity: 0.1;
    letter-spacing: 0.025em;
}

.titJa01,.titJa02 {
    font-weight: bold;
    line-height: 1.45em;
}

.tit124En36font .titJa01 {
    margin-top: -1.46em;
}

.tit102En36font .titJa01 {
    margin-top: -1.46em;
}

.tit102En32font .titJa02 {
    margin-top: -1.36em;
}

.titEn01 {
    font-size: clamp(40.00px, calc(5.44vw + 19.61px), 124.00px);
    color: #2F2019;
    -webkit-text-stroke: 2px #2F2019;
    text-stroke: 2px #2F2019;
}

.titEn02 {
    font-size: clamp(40.00px, calc(4.01vw + 24.95px), 102.00px);
    color: #2F2019;
    -webkit-text-stroke: 1px #2F2019;
    text-stroke: 1px #2F2019;
}

.titJa01 {
    font-size: clamp(18.00px, calc(1.17vw + 13.63px), 36.00px);
}

.titJa02 {
    font-size: clamp(16.00px, calc(1.04vw + 12.12px), 32.00px);
}

.title01 {
    font-size: clamp(18.00px, calc(0.39vw + 16.54px), 24.00px);
    font-weight: bold;
    letter-spacing: 0.05em;
    line-height: 1.583em;
}

.title01>strong {
    font-weight: bold;
    font-size: clamp(24.00px, calc(0.78vw + 21.09px), 36.00px);
    color: #E7A36E;
}

.text01 {
    font-size: clamp(14.00px, calc(0.26vw + 13.03px), 18.00px);
    font-weight: 500;
    letter-spacing: 0.05em;
    line-height: 2.111em;
}

.text01 strong {
    color: #E7A36E;
    font-size: clamp(16.00px, calc(0.26vw + 15.03px), 20.00px);
    font-weight: bold;
}

.text02 {
    font-size: clamp(14.00px, calc(0.13vw + 13.51px), 16.00px);
    font-weight: 500;
    line-height: 1.5em;
}

.text02 strong {
    color: #E7A36E;
    font-size: clamp(16.00px, calc(0.13vw + 15.51px), 18.00px);
    font-weight: bold;
}

.comTitSetDecoBox {
    text-align: center;
}

.comTitSetDecoBox .titSetBox {
    display: inline-block;
    position: relative;
}

.comTitSetDecoBox .titSetBox:before,.comTitSetDecoBox .titSetBox:after {
    content: "";
    position: absolute;
    width: 1040px;
    height: 2px;
    background: #E6E3E2;
    top: 0;
    bottom: 0;
    margin: auto;
}

.comTitSetDecoBox .titSetBox:before {
    right: 107%;
}

.comTitSetDecoBox .titSetBox:after {
    left: 107%;
}

.inFlexTit01 {
    font-size: clamp(20.00px, calc(1.27vw + 15.23px), 25.00px);
    font-weight: bold;
    line-height: 1.45em;
}

/*------*/

.comBannerWr {
    padding: 0 20px 20px;
}

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

.comBannerLinkTitBtn {
    font-size: clamp(14.00px, calc(0.26vw + 13.03px), 18.00px);
    font-weight: 500;
    letter-spacing: 0.05em;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 24px;
    padding-bottom: 6px;
}

.comBannerLinkTitBtn:after {
    content: "";
    width: 14.8px;
    height: 7.52px;
    background: url(/system_panel/uploads/images/arrow_icon.svg)no-repeat;
    background-position: center;
    background-size: contain;
    display: block;
    filter: brightness(0) invert(1);
    transition: all .5s;
}

.comBannerLinkImgBox {
    width: 100%;
    height: 300px;
    position: relative;
}

.comBannerLinkImgBox>img {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.comBannerLinkImgBox:before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1;
    background-color: #2F2019;
    opacity: .6;
    mix-blend-mode: multiply;
    transition: all .5s;
}

.comBannerLinkTitBox {
    max-width: 800px;
    position: absolute;
    z-index: 3;
    width: 90%;
    left: 0;
    right: 0;
    bottom: 34px;
    margin: auto;
    color: #fff;
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    gap: 15px;
    flex-direction: column;
}

.comBannerLinkTitSet {
    width: 100%;
}

.comBannerLinkTitSet .titEn02 {
    -webkit-text-stroke-color: #fff;
    color: #fff;
    text-stroke-color: #fff;
    opacity: 0.4;
}

.comBannerLink:hover .comBannerLinkImgBox:before {
    opacity: 0.3;
}

.comBannerLink:hover .comBannerLinkTitBtn:after {
    transform: translateX(8px);
}

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

.colorWhite {
    color: #fff;
}

.bgColor01 {
    background-color: #F5F1ED;
}

.boxShadow01 {
    box-shadow: 0 3px 6px rgb(0 0 0 / 12%);
}

.inBg01 {
    background: #F6F4F1;
    background: linear-gradient(0deg, rgba(246, 244, 241, 1) 0%, rgba(245, 241, 237, 1) 100%);
}

/*===========================================================
下層カバー
===========================================================*/

.in-cover {
    padding: 0 15px;
    max-width: 1920px;
    width: 100%;
    height: 200px;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
}

.in-cover:before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    right: 0;
    bottom: 0;
    background: #000000;
    z-index: 1;
    opacity: 0.1;
    mix-blend-mode: multiply;
}

.in-cover:after {
    content: "";
    position: absolute;
    width: 100%;
    height: 50%;
    left: 0;
    right: 0;
    bottom: 0;
    background: #6A615B;
    background: linear-gradient(0deg, rgba(106, 97, 91, 1) 0%, rgba(106, 97, 91, 0) 100%);
    z-index: 2;
    opacity: 0.8;
    mix-blend-mode: multiply;
}

.in-cover-title-box {
    margin: 0 auto;
    max-width: 1280px;
    width: 100%;
    position: relative;
    z-index: 3;
}

.in-cover-title {
    color: #fff;
    font-size: clamp(30.00px, calc(1.94vw + 22.72px), 60.00px);
    letter-spacing: 0.05em;
    line-height: 1.476em;
    font-weight: bold;
}

/*===========================================================
パンくず
===========================================================*/

.bread-wrapper {
    max-width: 1920px;
    width: 100%;
    padding: 15px;
}

.bread-box {
    max-width: 1280px;
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    margin: auto;
    letter-spacing: 0.05em;
    font-size: clamp(14.00px, calc(0.13vw + 13.51px), 16.00px);
    font-weight: 500;
}

.bread-link {
    display: block;
    color: #2F2019;
    text-decoration: underline;
}

.bread-link:hover {
    color: #2F2019;
    text-decoration: none;
}

.in-cover-sub-title {
    color: #fff;
    font-size: clamp(18.00px, calc(0.39vw + 16.54px), 24.00px);
    line-height: 1.3em;
    display: inline-flex;
    align-items: center;
    margin-top: 10px;
    font-family: "Cardo", serif;
    font-weight: bold;
    letter-spacing: 0.025em;
}
/*-- header -----------------------------------------------------------------*/

.header.clone .headerBoxWr {
    padding: 10px 15px;
}

.header.clone .hLogo {
    max-width: 84px;
}

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

.headerBoxWr {
    padding: 10px 15px;
    transition: all .5s;
}

.headerBox {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.hLogo {
    max-width: 84px;
    width: 100%;
    display: block;
    margin-right: 15px;
}

.hContentsBox {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 30px;
}

.hPcHamBox01 {
    max-width: 50px;
    width: 100%;
    cursor: pointer;
    text-align: center;
    display: block;
}

.spNavBtnBar {
    max-width: 100%;
    height: 30px;
    width: 100%;
    position: relative;
    z-index: 1;
}

.spNavBtnBarItem {
	width: 100%;
	height: 1px;
	background: #2F2019;
	position: absolute;
	right: 0;
	transition: ease .5s;
	mix-blend-mode: multiply;
}

.spNavBtnBarItem:nth-of-type(1) {
	top: 0;
}

.spNavBtnBarItem:nth-of-type(2) {
	top: 50%;
	width: 100%;
}

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

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

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

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

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

.hSnsSet {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 30px;
    max-width: 126px;
    width: 100%;
}

.hSnsLink {
    max-width: 32px;
    width: 100%;
    display: block;
}

.comLinkWeb.hWebBtn01 {
    margin: 0 0 0 auto;
    max-width: 164px;
    height: 48px;
    font-size: clamp(14.00px, calc(0.26vw + 13.03px), 18.00px);
}

.spMenuContBox {
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    gap: 20px;
    margin-top: 40px;
}

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

.hNavLink {
    font-size: clamp(14.00px, calc(0.26vw + 13.03px), 18.00px);
    font-weight: 500;
    letter-spacing: 0.05em;
    color: #2F2019;
}

.hNavLink:hover {
    color: #E7A36E;
}

.gnaviSingle>p {
    font-size: clamp(14.00px, calc(0.26vw + 13.03px), 18.00px);
    font-weight: 500;
    letter-spacing: 0.05em;
    color: #2F2019;
}

.gnaviSingleBtn {
    width: 16px;
    height: 16px;
    position: relative;
}

.gnaviSingleBtn:before,.gnaviSingleBtn:after {
    content: "";
    position: absolute;
    background: #333;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto
}

.gnaviSingleBtn:before {
    width: 100%;
    height: 1px;
}

.gnaviSingleBtn:after {
    width: 100%;
    height: 1px;
    transform:rotate(90deg);
    transition: all .5s;
}

.gnaviSingle:hover .gnaviSingleBtn:after {
    opacity: 0;
    transition: all .5s;
    transform: rotate(0deg);
}

.gnaviSingle {
    display: flex;
    align-items: center;
    gap: 5px;
    position: relative;
}

.gnaviSecond {
    background-color: #F5F1ED;
    left: 0;
    position: absolute;
    visibility: hidden;
    width: 190px;
    top: 42px;
    left: 50%;
    transform: translateX(-50%);
    margin: auto;
    padding: 20px 20px;
    z-index: 100;
    opacity: 0;
    transition: all .5s;
    box-shadow: 0 0 6px rgb(0 0 0 / 12%);
}

.gnaviSingle:hover .gnaviSecond {
    visibility: visible;
    opacity: 1;
}

.gnaviSecond:after {
    height: 25px;
    bottom: 100%;
    left: 0;
    right: 0;
    width: 100%;
    position: absolute;
    content: "";
    z-index: 0;
}

.gnaviSecond .gnaviSecondLinkMt:first-child {
    padding-bottom: 13px;
    margin-bottom: 14px;
    border-bottom: 1px solid #AF9F96;
}

.gnaviSecondLink {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: clamp(14.00px, calc(0.13vw + 13.51px), 16.00px);
    font-weight: 500;
    line-height: 1.5em;
    color: #2F2019;
}

.gnaviSecondLink>p {
    flex: 1;
}

.gnaviSecondLink:hover {
    color: #E7A36E;
}

/*--is-animation--*/

.header.clone {
    position: fixed;
    top: -100px;
    transition: all .5s;
    visibility: hidden;
    opacity: 0;
    background: #fff;
    box-shadow: 0 3px 6px hsl(0deg 0% 0% / 16%);
}

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

/*----SPHam-----*/

.spMenu {
    margin: auto;
    padding: 0;
    max-width: 1920px;
    width: 100%;
    position: fixed;
    right: -100%;
    z-index: 98;
    transition: ease .5s;
    top: 0;
    display: block;
    background: rgb(0 0 0 / 25%);
}

.spMenu.open {
	right: 0;
}

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

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

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

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

.spMenuLink {
	display: block;
	font-size: clamp(14.00px, calc(0.26vw + 13.03px), 18.00px);
	font-weight: 500;
	letter-spacing: 0.05em;
	color: #2F2019;
	padding: 12px 0;
	border-bottom: 1px solid #E6E3E2;
	line-height: 1.45em;
}

.spMenuLink:hover {
    color: #E7A36E;
}

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

.hLeftScrollBox {
    max-width: 250px;
    width: 100%;
    position: fixed;
    right: 0;
    bottom: 60px;
    z-index: 99;
    pointer-events: none;
    display: none;
}

.hLeftScrollBox .hLeftScrollItemBox:first-child {
    margin-top: 0;
}

.hLeftScrollItemBox {
    margin-top: 16px;
    border-radius: 8px 0 0 8px;
    pointer-events: auto;
    box-shadow: 0 4px 6px rgb(0 0 0 / 16%);
}

.hLeftScrollItemTel {
    background-color: #E7A36E;
    color: #FFFDFA;
    padding: 16px 16px 14px;
}

.hLeftScrollItemCalendar {
    background-color: #E6E3E2;
    color: #2F2019;
    padding: 18px 16px 16px;
}

.hLeftScrollItemTelSet,.hLeftScrollItemCalendarSet {
    max-width: 204px;
    width: 100%;
    margin: 0 auto;
}

.hLeftScrollItemTelSubTit {
    width: 100%;
    text-align: center;
    background-color: #F5F1ED;
    color: #DD9964;
    padding: 2px 15px;
    border-radius: 14px;
    font-size: clamp(12.00px, calc(0.13vw + 11.51px), 14.00px);
    font-weight: 500;
    letter-spacing: 0.05em;
    line-height: 1.429em;
    margin-bottom: 1px;
}

.hLeftScrollItemCalendarIcon {
    max-width: 26px;
    width: 100%;
    display: block;
}

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

.hLeftScrollItemCalendarText {
    font-size: clamp(14.00px, calc(0.13vw + 13.51px), 16.00px);
    font-weight: 500;
    line-height: 1.5em;
}

.hLeftScrollItemCalendarText>a {
    font-weight: bold;
    color: #2F2019;
    text-decoration: underline;
}

.hLeftScrollItemCalendarText>a:hover {
    text-decoration: unset;
    color: #2F2019;
}

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

.hLeftScrollItemTelIcon {
    max-width: 21.73px;
    width: 100%;
    display: block;
}

.hLeftScrollItemTelNumberSet>p {
    font-family: "Cardo", serif;
    font-weight: bold;
    font-size: clamp(25.00px, calc(0.45vw + 23.30px), 32.00px);
    white-space: nowrap;
    line-height: 1.3775em;
}

.hLeftScrollItemTelTimeSet {
    padding-left: 32px;
    font-size: clamp(12.00px, calc(0.13vw + 11.51px), 14.00px);
    font-weight: 500;
    margin-top: -7px;
}

.hLeftScrollBox {
  opacity: 1;
  visibility: visible;
  transition: opacity 0.3s ease, visibility 0.3s ease;
}

/* .topWr05エリアにいるとき */
.hLeftScrollBox.is-top-hidden {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}

/* .footerエリアにいるとき */
.hLeftScrollBox.is-hidden {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}

/*-----*/

.spNav {
    max-width: 100%;
    width: 100%;
    height: auto;
    position: fixed;
    bottom: 0;
    left: 0;
    z-index: 999999;
}

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

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

.spNavConte-l {
    border-right: 1px solid #fff;
    width: 50%;
    border-top: 1px solid #FFF;
    padding: 10px 10px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    height: 90px;
}

.spNavConte-pageTel {
    background-color: #E7A36E;
    color: #FFFDFA;
}

.spNavTelTit {
    width: 100%;
    text-align: center;
    background-color: #F5F1ED;
    color: #DD9964;
    padding: 2px 15px;
    border-radius: 14px;
    font-size: clamp(12.00px, calc(0.13vw + 11.51px), 14.00px);
    font-weight: 500;
    letter-spacing: 0.05em;
    line-height: 1.429em;
    margin-bottom: 1px;
}

.spNavTelSet {
    display: flex;
    align-items: center;
    gap: 10px;
    justify-content: center;
}

.spNavTelIcon {
    max-width: 15.73px;
    width: 100%;
    display: block;
}

.spNavTelNumber {
    font-family: "Cardo", serif;
    font-weight: bold;
    font-size: clamp(22.00px, calc(0.65vw + 19.57px), 32.00px);
    line-height: 1.3775em;
    white-space: nowrap;
}

.spNavTelTimeText {
    font-size: clamp(12.00px, calc(0.13vw + 11.51px), 14.00px);
    font-weight: 500;
    margin-top: -0.5em;
    text-align: center;
}

.spNavWebSet {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
}

.spNavWebIcon {
    max-width: 22px;
    width: 100%;
    display: block;
}

.spNavWebText {
    font-size: clamp(13.00px, calc(0.19vw + 12.27px), 16.00px);
    font-weight: 500;
    line-height: 1.5em;
}

.spNavWebText>a {
    font-weight: bold;
    color: #2F2019;
    text-decoration: underline;
}

.spNavWebText>a:hover {
    text-decoration: unset;
    color: #2F2019;
}

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

.fNavLink {
    font-size: clamp(14.00px, calc(0.26vw + 13.03px), 18.00px);
    transition: all .5s;
}

.fNavLink:hover {
    color: #FFFDFA;
    opacity: 0.7;
}

.fTownBox {
    font-size: clamp(14.00px, calc(0.13vw + 13.51px), 16.00px);
}

.fTownBox a {
    color: #FFFDFA;
    text-decoration: underline;
}

.fTownBox a:hover {
    color: #FFFDFA;
    text-decoration: unset;
}

.copyright {
    padding: 29px 0 31px;
    text-align: center;
    font-weight: 400;
    letter-spacing: 0.05em;
    font-size: clamp(11.00px, calc(0.13vw + 10.51px), 13.00px);
    line-height: 1.31em;
}

.footer .comSnsLinkText {
    color: #FFFDFA;
}

.fSnsSetBox {
    display: flex;
    align-items: center;
    gap: 32px;
}

.fContSetBox {
    margin-top: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 16px;
    flex-wrap: wrap;
    flex-direction: column;
}

.fTelBox {
    background-color: #E7A36E;
    border-radius: 8px;
    padding: 9px 9px 11px;
    max-width: 240px;
    width: 100%;
}

.fTelFlex {
    display: flex;
    align-items: flex-start;
    justify-content: center;
    gap: 7.6px;
}

.fTelNumber {
    font-family: "Cardo", serif;
    font-weight: bold;
    font-size: clamp(26.00px, calc(0.65vw + 23.57px), 36.00px);
    line-height: 1.361em;
}

.fTelTimeText {
    font-size: clamp(12.00px, calc(0.26vw + 11.03px), 16.00px);
    font-weight: 500;
    margin-top: -8px;
}

.fTelIcon {
    max-width: 24px;
    width: 100%;
    display: block;
    margin-top: 9px;
}

.fRow {
    border-bottom: 1px solid #fff;
    padding-bottom: 38px;
}

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

/*---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;
}

/*---recruit--*/

.entryLeadTextBox {
    margin-top: 20px;
}

.entryBtnTel {
    background-color: #E7A36E;
    color: #FFFDFA;
    padding: 16px 16px 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
}

.entryBtnGrid {
    max-width: 600px;
    width: 100%;
    margin: 30px auto 0;
    grid-template-columns: repeat(1, 1fr);
    gap: 10px 20px;
    display: grid;
}

.entryBtnSns {
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    letter-spacing: 0.05em;
    font-weight: 500;
    color: #2F2019;
    position: relative;
    border: 1px solid #AF9F96;
    gap: 15px;
    padding: 15px;
    transition: all .5s;
    font-size: clamp(14.00px, calc(0.17vw + 12.67px), 16.00px);
}

.entryBtnSns:after {
    content: "";
    width: 14.8px;
    height: 7.52px;
    background: url(/system_panel/uploads/images/arrow_icon.svg)no-repeat;
    background-position: center;
    background-size: contain;
    display: block;
    transition: all .5s;
}

.entryBtnSns:hover:after {
    transform: translateX(8px);
    transition: all .5s;
}

.entryBtnSns:hover {
    color: #2F2019;
}

.entryBtnIcon02 {
    max-width: 40px;
    width: 100%;
    display: block;
}

.entryBtnSns>p {
    flex: 1;
}

.entryBtnIcon01 {
    max-width: 21.73px;
    width: 100%;
    display: block;
}

.entryBtnTel>p {
    font-family: "Cardo", serif;
    font-weight: bold;
    font-size: clamp(25.00px, calc(0.45vw + 23.30px), 32.00px);
    white-space: nowrap;
    line-height: 1.3775em;
}

.entryBtn {
    max-width: 290px;
    width: 100%;
    margin: 0 auto;
    height: 75px;
}

.recruitAttractiveWr {
    padding: 36px 0 0;
    min-width: 0;
    width: 100%;
}

.recruitAttractiveGridBox {
    gap: 25px;
    display: flex;
    align-items: flex-start;
    justify-content: center;
    flex-wrap: wrap;
    max-width: 866px;
    width: 100%;
    margin: 0 auto;
}

.recruitAttractiveInner {
    padding: 0 30px;
}

.recruitAttractiveTitBox {
    display: flex;
    align-items: center;
    gap: 21px;
    margin-bottom: 30px;
}

.recruitAttractiveTitBox:after {
    content: "";
    flex: 1;
    height: 1px;
    background-color: #CCCCCB;
    margin-top: 0.5em;
}

.recruitAttractiveGridItem {
    max-width: 130px;
    width: 100%;
}

.recruitAttractiveGridItemImgBox {
    max-width: 220px;
    width: 100%;
    margin: 0 auto;
}

.recruitAttractiveGridItemText {
    margin: 10px 0 0 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    font-size: clamp(12.00px, calc(0.26vw + 11.03px), 16.00px);
    font-weight: 500;
    line-height: 1.5em;
    white-space: nowrap;
}

.recruitAttractiveEnBox {
    padding: 0 27px;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    position: relative;
    z-index: 1;
    margin-top: 15px;
}

.recruitAttractiveEnTitList {
    position: relative;
}

.recruitAttractiveEnTitList:before {
    content: "";
    position: absolute;
    width: 1920px;
    height: 1px;
    right: 102%;
    top: 0;
    bottom: 0;
    margin: auto;
    background-color: #CCCCCB;
}

.recruitAttractiveEnTitList>.titEn02 {
    font-size: clamp(32.00px, calc(4.53vw + 15.01px), 102.00px);
    -webkit-text-stroke-color: #E8E4E7;
    color: #E8E4E7;
    text-stroke-color: #E8E4E7;
    opacity: 1;
}

/*----*/

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

.compBaseTr {
    border-bottom: 1px solid #CCCCCB;
    font-size: clamp(14.00px, calc(0.13vw + 13.51px), 16.00px);
    font-weight: 500;
    line-height: 1.5em;
}

.compBaseTh {
    padding: 15px;
    background-color: #E6E3E2;
    color: #2F2019;
}

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

/*----*/

/*---共通ループテキスト---*/

.comLoopTextBox {
  overflow: hidden;
  white-space: nowrap;
  width: 100%;
}

.comLoopTextTrack {
  display: inline-flex;
  width: max-content;
  /* アニメーションの実行: 50秒かけて左に無限ループ */
  animation: scroll-marquee 50s linear infinite;
}

.comLoopTextItem {
  display: inline-block;
  /* 文字サイズが変わっても柔軟に対応します */
  font-size: clamp(50.00px, calc(3.24vw + 37.86px), 100.00px);
  font-family: "Cardo", serif;
  font-weight: 400;
  letter-spacing: 0.025em;
  opacity: 0.2;
  line-height: 1.35em;
  color: #2F2019;
  -webkit-text-stroke: 1px #2F2019;
  text-stroke: 1px #2F2019;
}

@keyframes scroll-marquee {
  0% {
    transform: translateX(0);
  }
  100% {
    /* トラック全体のちょうど半分（1つのテキストの長さ分）だけ左に移動させる */
    transform: translateX(-50%);
  }
}

/*-------*/

.inWr01 {
    padding: 65px 0;
}

.inner01 {
    max-width: 1280px;
    width: 100%;
    margin: 0 auto;
}

/*-----*/

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

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

.menuTitFlexBox {
    border-bottom: 1px solid #CCCCCB;
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 15px;
    padding-bottom: 5px;
    margin-bottom: 16px;
}

.menuTitEn {
    font-family: "Cardo", serif;
    font-weight: 400;
    opacity: 0.4;
    letter-spacing: 0.025em;
    line-height: 1em;
    font-size: clamp(25.00px, calc(0.71vw + 22.33px), 36.00px);
    flex: 1;
}

.menuListTh u {
    text-decoration: unset;
    font-size: 0.8em;
    opacity: 0.8;
    display: inline-block;
}

.menuMinText01 {
    font-size: clamp(12.00px, calc(0.17vw + 10.67px), 14.00px);
    font-weight: 500;
    letter-spacing: 0.025em;
}

.menuListSet {
    border-bottom: 1px solid #CCCCCB;
    padding-bottom: 16px;
    display: flex;
    align-items: flex-end;
    justify-content: center;
    gap: 15px;
}

.menuListTh {
    font-size: clamp(16.00px, calc(0.17vw + 14.67px), 18.00px);
    font-weight: 500;
    letter-spacing: 0.05em;
}

.menuListTd {
    font-size: clamp(16.00px, calc(0.17vw + 14.67px), 18.00px);
    font-weight: 500;
}

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

/*-----*/

.concernContents {
    background: #fff;
    padding: 15px 15px 30px;
    box-shadow: 0 3px 10px rgb(0 0 0 / 10%);
    position: relative;
    overflow: hidden;
}

.concernEn {
    font-family: "Cardo", serif;
    font-weight: 400;
    opacity: 0.2;
    letter-spacing: 0.05em;
    font-size: clamp(45.00px, calc(3.24vw + 32.86px), 95.00px);
    color: #C9925A;
    -webkit-text-stroke: 4px #C9925A;
    text-stroke: 4px #C9925A;
    position: absolute;
    top: auto;
    right: 14px;
    bottom: 0;
}

.concernEn.colorDark {
    color: #7C6650;
    -webkit-text-stroke: 4px #7C6650;
    text-stroke: 4px #7C6650;
}

.concernFlexImgBox {
    width: 100%;
    display: block;
}

.concernFlexTextBox {
    width: 100%;
}

.concernFlex {
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    flex-direction: column;
    gap: 20px 0;
}

.concernFlexTextListBox {
    margin-top: 20px;
}

.concernFlexTextBgSet {
    background-color: #F5F1ED;
    margin-top: 20px;
    padding: 20px 25px;
    

  /* 2. 左右の端に黒い丸（半円）を配置し、縦方向に繰り返す */
    background-image: radial-gradient(circle at 0px 50%, #fff 10px, transparent 9px),
    radial-gradient(circle at 100% 50%, #FFF 10px, transparent 9px);
  
  /* 3. 縦方向の間隔（高さ40pxごと）と、全体のサイズ指定 */
    background-size: 100% 33px;
    background-repeat: repeat-y;
    min-height: 170px !important;
}

.concernFlexTextBgTitle {
    font-size: clamp(16.00px, calc(2.29vw + 7.41px), 25.00px);
    font-weight: bold;
}

.concernFlexTextBgTimeText {
    font-size: clamp(14.00px, calc(0.26vw + 13.03px), 18.00px);
    font-weight: 500;
    letter-spacing: 0.05em;
    margin-top: 12px;
    display: flex;
    align-items: center;
    gap: 6px;
    color: #A09080;
}

.concernFlexTextBgMoneyText {
    font-family: "Cardo", serif;
    font-weight: bold;
    font-size: clamp(25.00px, calc(1.29vw + 20.15px), 45.00px);
    line-height: 1.65em;
    margin-top: 4px;
    color: #7C6650;
    -webkit-text-stroke: 1px #7C6650;
    text-stroke: 1px #7C6650;
    letter-spacing: 0.05em;
}

.concernFlexTextBgMoneyText u {
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-weight: bold;
    font-size: 0.5em;
    text-decoration: unset;
    -webkit-text-stroke: 0px #7C6650;
    text-stroke: 0px #7C6650;
	font-size: clamp(16.00px, calc(0.26vw + 15.03px), 20.00px);
}

.concernFlexTextBgTitle:after {
    content: "";
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='2'%3E%3Cline x1='0' y1='1' x2='4' y2='1' stroke='%23CCCCCB' stroke-width='2'/%3E%3C/svg%3E");
    background-repeat: repeat-x;
    background-size: 8px 2px; /* 線分4 + 間隔4 = 8px周期 */
    height: 2px;
    display: block;
    margin-top: 9px;
    display: block;
}

.concernFlexTextBgTimeText:before,.concernFlexTextBgTimeText:after {
    content: "";
    width: 15px;
    height: 5px;
    display: block;
    border-top: 1px solid #A09080;
    border-bottom: 1px solid #A09080;
}

.concernFlexTitle {
    font-size: clamp(16.00px, calc(0.52vw + 14.06px), 24.00px);
    letter-spacing: 0.05em;
    font-weight: 500;
    padding-bottom: 8px;
    border-bottom: 1px solid #CCCCCB;
}

/*--salon----*/

.salonTelBox {
    margin-top: 16px;
    border-radius: 8px;
    pointer-events: auto;
    background-color: #E7A36E;
    color: #FFFDFA;
    padding: 16px 20px 16px;
    max-width: 350px;
    width: 100%;
}

.salonTelSubTit {
    text-align: center;
    background-color: #F5F1ED;
    color: #DD9964;
    padding: 2px 14%;
    border-radius: 14px;
    font-size: clamp(14.00px, calc(0.13vw + 13.51px), 16.00px);
    font-weight: 500;
    letter-spacing: 0.05em;
    line-height: 1.429em;
    margin-bottom: 1px;
    display: inline-flex;
}

.salonTelSetBox {
    max-width: 270px;
    width: 100%;
    margin: 0 auto;
}

.salonTelTimeSet {
    font-size: clamp(12.00px, calc(0.19vw + 11.27px), 15.00px);
    font-weight: 500;
    margin-top: -7px;
}

.salonTelNumberSet {
    display: flex;
    align-items: center;
    gap: 13px;
    justify-content: center;
}

.salonTelIcon {
    max-width: 32px;
    width: 100%;
    display: block;
}

.salonTelNumberSet>div {
    flex: 1;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.salonTelNumber {
    font-family: "Cardo", serif;
    font-weight: bold;
    font-size: clamp(25.00px, calc(1.23vw + 20.39px), 44.00px);
    white-space: nowrap;
    line-height: 1.3775em;
}

.salonSnsSetBox {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 32px;
}

.salonShopTb {
    margin-top: 20px;
}

.salonShopTr {
    padding: 15px 10px 8px;
    border-bottom: 1px solid #C1B9B2;
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    gap: 5px 15px;
    font-size: clamp(14.00px, calc(0.26vw + 13.03px), 18.00px);
    font-weight: 500;
    flex-direction: column;
}

.salonShopTh {
    width: 90px;
}

.salonShopTd {
    flex: 1;
    width: auto;
    font-weight: 400;
}

.salonShopTd a {
    color: #2F2019;
    text-decoration: underline;
}

.salonShopTd a:hover {
    color: #2F2019;
    text-decoration: unset;
}

.salonLoopWr:before {
    content: "";
    position: absolute;
    height: 50%;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #F5F1ED;
}

.salonLoopWr {
    position: relative;
}

.salonContentsBox {
    position: relative;
    border: 1px solid #CCCCCB;
    padding: 60px 20px 20px;
}

.salonContentsTitBox {
    position: absolute;
    top: 0;                    /* 親要素の上端に合わせる */
    left: 50%;                 /* 親要素の横幅の中央（50%）に左端を置く */
    transform: translate(-50%, -50%); /* 自身の幅・高さの半分だけ左・上に引き戻す */
    text-align: center;
    background-color: #F8F8F7;
    white-space: nowrap;
}

.salonContentsBoxPt {
    padding-top: 40px;
}

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

.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 #C1B9B2;
    font-size: 16px;
    font-weight: 400;
    font-family: "Cardo", serif;
}

.webgene-pagination > ul > li.selected > a{
    color: #fff;
    background-color: #2F2019;
    border-color: #2F2019;
    cursor: inherit;
}

.webgene-pagination > ul > li.selected > a:hover {
    color: #fff;
    background-color: #2F2019;
    border-color: #2F2019;
}

.webgene-pagination > ul > li > a{
    width: 100%;
    height: 100%;
    width: 100%;
    color: var(--base-body-color);
    display: flex;
    justify-content: center;
    align-items: center;
    transition: all .5s;
}
.webgene-pagination > ul > li > a:hover{
    color: #fff;
    background-color: #2F2019;
    border-color: #2F2019;
    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: 10px;
    height: 18px;
}

.prev > a:before {
    content: "";
    background: url(/system_panel/uploads/images/com_arrow_icon01.svg) no-repeat;
    background-position: center;
    background-size: contain;
    width: 10px;
    height: 18px;
    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) {

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

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

}

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

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

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

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

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


.salonShopTr {
    flex-direction: row;
}


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

}

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

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

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

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

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

.spNavTelIcon {
    max-width: 18.73px;
}

.in-cover {
    height: 250px;
}

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

.salonTelSetBox {
    max-width: 290px;
}

.recruitAttractiveGridItem {
    max-width: 180px;
}

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

}

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

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

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

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

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

.fContSetBox {
    margin-top: 40px;
    gap: 32px;
    justify-content: flex-start;
    flex-direction: row;
}

.fRow {
    padding-bottom: 48px;
}

.comLoopTextItem {
  -webkit-text-stroke: 3px #2F2019;
  text-stroke: 3px #2F2019;
}

.titEn01 {
    -webkit-text-stroke: 4px #2F2019;
    text-stroke: 4px #2F2019;
}

.titEn02 {
    -webkit-text-stroke: 3px #2F2019;
    text-stroke: 3px #2F2019;
}

.tit124En36font .titJa01 {
    margin-top: -1.56em;
}

.comBannerGrid {
    grid-template-columns: repeat(2, 1fr);
}
  
.spNav {
    display: none;
}
  
.spMenuConte {
    max-width: 460px;
    padding: 140px 0 100px;
}

.hPcHamBox01 {
    display: none;
}

.hNavWr {
    display: flex;
}

.headerBoxWr {
    padding: 20px 3.13%;
}

.hLeftScrollBox {
    display: block;
}

.inWr01 {
    padding: 90px 0;
}

.inFlexTit01 {
    font-size: clamp(20.00px, calc(1.39vw + 9.33px), 36.00px);
}

.recruitAttractiveGridBox {
    gap: 40px;
    grid-template-columns: repeat(3, 1fr);
    display: grid;
}

.recruitAttractiveGridItem {
    max-width: 220px;
    width: 100%;
    margin: 0 auto 0 auto;
}

.recruitAttractiveWr {
    padding: 56px 0 0;
}

.recruitAttractiveInner {
    padding: 0 56px;
}

.compBaseTh {
    border-right: 1px solid #CCCCCB;
}

.menuGridWr {
    gap: 40px 50px;
    grid-template-columns: repeat(2, 1fr);
}

.concernFlexTextBgTitle {
    font-size: clamp(16.00px, calc(0.78vw + 10.00px), 25.00px);
}

.concernFlexImgBox {
    width: 46%;
}

.concernFlexTextBox {
    width: 51%;
}

.concernFlex {
    flex-direction: row;
}

.concernContents {
    padding: 30px;
}

.salonContentsBox {
    padding: 80px 40px 40px;
}

.menuGridItemBox {
    gap: 80px;
}

.concernEn {
    top: -0.15em;
    right: 14px;
    bottom: auto;
}

.concernFlexTextBgSet {
    background-image: radial-gradient(circle at 0px 50%, #fff 13px, transparent 14px),
    radial-gradient(circle at 100% 50%, #FFF 13px, transparent 14px);
    background-size: 100% 42px;
}
  
/*-----------------------------------------------------------
ページャー
-----------------------------------------------------------*/

.webgene-pagination > ul > li{
    height: 40px;
    max-width: 40px;
    font-size: 18px;
}

.concernFlexTextBgSet {
    min-height: 170px !important;
}

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

}

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

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

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

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

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



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

}

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

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


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

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

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

.fTelBox {
    max-width: 304px;
}

.comBannerLinkTitBox {
    flex-direction: row;
}

.in-cover {
    height: 300px;
}

.inWr01 {
    padding: 130px 0;
}

.entryBtnGrid {
    margin: 60px auto 0;
}

.menuGridWr {
    gap: 80px;
}

.concernContents {
    padding: 60px;
}

.concernFlexTextBgSet {
    margin-top: 32px;
    padding: 30px 40px 17px;
}

.concernFlexTextListBox {
    margin-top: 30px;
}

.salonShopTr {
    padding: 30px 20px 16px;
}

.salonShopTb {
    margin-top: 30px;
}

.salonContentsBox {
    padding: 120px 60px 60px;
}

.salonContentsBoxPt {
    padding-top: 80px;
}

.concernFlexTextBgSet {
    min-height: 217px !important;
}

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

}

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

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

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

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

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

.comBannerLinkTitBox {
    bottom: 54px;
}

.comBannerLinkImgBox {
    height: 430px;
}

.hLogo {
    max-width: 104px;
}

.hLeftScrollBox {
    max-width: 274px;
}

.hLeftScrollItemTelSet,.hLeftScrollItemCalendarSet {
    max-width: 224px;
}

.in-cover {
    height: 400px;
}

.recruitAttractiveGridBox {
    gap: 80px;
}

.salonShopTh {
    width: 160px;
}

.salonTelBox {
    max-width: 400px;
}

.salonTelSetBox {
    max-width: 320px;
}

.salonTelIcon {
    max-width: 42px;
}

.salonTelSubTit {
    padding: 2px 18%;
}

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

}

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

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


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

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

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

.hNavWr {
    gap: 10px 40px;
}

.hContentsBox {
    gap: 54px;
}

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

}

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

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