@charset "UTF-8";

/* Theme Name:BasisPoint（2606 Version）
Version:3.0 */
/* ここからリセットCSS */
html,body,div,h1,h2,h3,h4,h5,h6,p,ul,ol,dl,dt,dd,table,th,td,form,fieldset,header,section,article,aside,footer,figure,figcaption,nav {margin: 0; padding: 0;}
div,p {box-sizing: border-box;}
a {text-decoration: none; color: #333;}
article,aside,canvas,details,figcaption,figure,footer,header,menu,nav,section,summary {display: block;}
img {max-width: 100%;}
input,textarea,select,button {outline: none; box-sizing: border-box;}
html {overflow: visible; overflow: -moz-scrollbars-vertical; overflow-x: visible;}
html,body {height: 100%;}
ul,ol {list-style: none;}
p,li,dt,dd,th,td,pre {
    -ms-line-break: strict;
    line-break: strict;
    -ms-word-break: break-strict;
    word-break: break-strict;
}
table {
    border-collapse: collapse;
    border-spacing: 0;
}
img {
    border: none;
    vertical-align: middle;
}
/* テーマカラーの設定 */
/* mixin */
/* メインCSS */
.sp_none {display: block;}
.sp_only{display: none;}
br.sp-only {display: none;}
.pc_none {display: none;}
.spbr {display: none;}
p.text-center {text-align: center; margin-top: 1.5rem;}
.fz90{font-size: 90%;}
.fz80{font-size: 80%;}
.displayNone {display: none;}
.isShow {
    visibility: visible !important;
    transition: 1.5s;
}
body {
    background-color: #fff;
    font-family: 'Noto Sans JP', "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, sans-serif;
    font-size: 16px;
    color: #333;
}
h2 {
    font-weight: 800;
    font-size: 30px;
    letter-spacing: 0.01em;
    line-height: 1.4em;
    position: relative;
    padding: 10px 0 10px 40px;
    color: #000;
}
h2:not(.matomeCatch):not(.matomeTopCatch h2):not(.normalHeadline):not(.matomeTokusyu h2):not(.tokusyu_store_name):not(.blogArticle h2):not(.indexWrap h2):not(.mainContentsCoworking h2):not(.mainContentsPrice01 h2):not(.o_com h2)::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 50px 50px 0 0;
    border-color: #f1d661 transparent transparent transparent;
}
h2.normalHeadline {
    font-size: 30px;
    line-height: 60px;
    padding-top: 0;
    font-weight: bold;
}
h2.normalHeadline::before {
    border: none;
    border-color: transparent transparent transparent transparent;
}
.yellowButton {
    background-color: #f1d661;
    height: 75px;
    font-size: 18px;
    border: 0;
    border-radius: 3px;
    box-shadow: 0 2px 2px rgb(0 0 0 / 10%);
    margin: 50px auto;
    letter-spacing: 0.04em;
    font-weight: bold;
    display: flex;
    justify-content: center;
    align-items: center;
}
.yellowButton svg {
    margin-left: 10px;
    width: 8.6px;
    height: 14px;
}
.yellowButton img {
    margin-left: 10px;
    width: 8.14px;
    height: 14px;
}

/* 全体 */
.wrap {
    overflow: hidden;
    /* ここからヘッダー */
}
header {
    display: flex;
    align-items: center;
    height: 70px;
    background-color: #fff;
    min-width: 1180px;
    overflow: visible;
    z-index: 20000;
    box-shadow: 0 0 10px #0000001f;
}
.headerSP,
.headerSPbar {
    display: none;
}
.headerWrap {
    padding-right: 40px;
    padding-left: 40px;
    display: flex;
    max-width: 1880px;
    width: 100%;
    align-items: center;
    justify-content: flex-end;
    height: 100%;
    min-width: 1230px;
}
.headerWrap h1.headerLogo,
.headerWrap div.headerLogo {
    margin-right: auto;
}
.headerWrap h1.headerLogo img,
.headerWrap div.headerLogo img {
    min-width: 200px;
    min-height: 29px;
    margin-top: -10px;
}
.headerNav {
    font-size: 16px;
    display: flex;
    position: relative;
    justify-content: flex-end;
    margin-right: 0;
    z-index: 1000;
    min-width: 950px;
}
.headerNav ul {
    display: flex;
    align-items: center;
}
.headerNav ul li {
    padding-right: 20px;
    white-space: nowrap;
}
.headerNav ul li::after {
    content: "";
    height: 16px;
    margin-left: 20px;
    border-right: 1px solid #666;
}
.headerNav ul li:last-child::after {
    border-right: 0;
}
.headerNav ul li.headerNavActive a {
    position: relative;
}
.headerNav ul li.headerNavActive a::before {
    position: absolute;
    bottom: -3px;
    left: 2px;
    content: "";
    width: 100%;
    border-bottom: 2px solid #f1d661;
}
.headerNav ul li a {
    color: #000;
}
.headerNav ul li a:hover {
    position: relative;
}
.headerNav ul li a:hover::before {
    position: absolute;
    bottom: -3px;
    content: "";
    width: 100%;
    border-bottom: 2px solid #f1d661;
}
.headerNav ul li ul {
    display: none;
    position: absolute;
}
.headerNav ul li:hover ul {
    display: block;
}
.headerNav ul li ul li {
    display: block;
    background: white;
    margin-left: -13px;
    padding: 10px 12px;
}
.headerNav ul li ul li::after {
    border-right: 0;
}
.yellowButton.reserveRoomButton {
    font-size: 15px;
    font-weight: normal;
    cursor: pointer;
    height: 50px;
    width: 180px;
    margin: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}
/* ヘッダー固定 */
.fixed {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 9999;
    width: 100%;
    -webkit-transform: translateZ(0);
    overflow: visible;
}

/* ここからメイン */
main {
    padding-right: 40px;
    padding-left: 40px;
    position: relative;
    z-index: 100;
    min-width: 1100px;
    overflow: hidden;
    margin-top: 70px;
    background-image: url(img/bgCanvas.gif);
}
main::after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 550px 550px 550px 0;
    border-color: transparent #f1d761 transparent transparent;
    z-index: 100;
}
.headerImg {
    width: 100vw;
    min-width: 1180px;
    height: 300px;
    overflow: hidden;
    position: relative;
    z-index: 3000;
    left: -40px;
    right: -40px;
    top: 0;
}
.headerImg img {
    position: absolute;
    width: auto;
    height: auto;
    top: 50%;
    left: 50%;
    min-height: 100%;
    min-width: 100%;
    -ms-transform: translateX(-50%) translateY(-50%);
    -moz-transform: translateX(-50%) translateY(-50%);
    -webkit-transform: translateX(-50%) translateY(-50%);
    transform: translateX(-50%) translateY(-50%);
}
@supports (object-fit: cover) {
    .headerImg img,
    .storeMapDetailBox .storeMapDetailImg img,
    .blogThumbnailmage img,
    .matomeThumbnailmage img,
    .blogPageNavThumbnails .blogNavImg img {
        position: absolute;
        height: 100%;
        width: 100%;
        left: 0;
        -o-object-fit: cover;
        object-fit: cover;
        top: 0;
        -ms-transform: none;
        -moz-transform: none;
        -webkit-transform: none;
        transform: none;
    }
}
.mainWrap {
    max-width: 1880px;
    width: 100%;
    margin-right: auto;
    margin-left: auto;
    background-repeat: repeat;
    padding-top: 40px;
    position: relative;
}
.mainWrap h1 {
    font-size: 36px;
    font-weight: bold;
    position: relative;
    z-index: 300;
    color: #000;
}
.mainWrap h1 span {
    display: block;
    width: 1100px;
    margin-right: auto;
    margin-left: auto;
}
.mainWrap div span.headlineJa {
    font-size: 24px;
    letter-spacing: 0.11em;
    line-height: 30px;
}
.mainWrap div span.headlineEn {
    font-size: 40px;
    font-weight: 600;
    position: relative;
}
.mainWrap div.CustomPostHead::after {
    display: block;
    position: relative;
    content: "";
    width: 4000px;
    bottom: 7px;
    left: -50vw;
    border-top: 2px solid #000;
}
.mainWrap h1::after {
    display: block;
    content: "";
    width: 4000px;
    position: absolute;
    bottom: 7px;
    left: -50vw;
    border-top: 2px solid #000;
}
.mainWrap h1.matome-archive::after {
    display: none;
}
h1.japaneseHeadline::after {
    bottom: 0;
}
h1.japaneseHeadline span.headlineJaBig {
    font-size: 48px;
    line-height: 72px;
    position: relative;
    margin-top: 20px;
    letter-spacing: 0.05em;
}
.mainContents {
    width: 1100px;
    margin-right: auto;
    margin-left: auto;
    letter-spacing: 0.11em;
    line-height: 30px;
    overflow: visible;
    padding-top: 30px;
    padding-bottom: 34px;
    position: relative;
    z-index: 300;
    color: #333;
}
.mainContentsBox {
    font-size: 16px;
    padding-bottom: 95px;
}
.mainContentsBox h3 {
    font-size: 24px;
    font-weight: bold;
    color: #333;
    border-bottom: 1px solid #333;
    padding-bottom: 6px;
    margin-bottom: 30px;
    margin-top: 60px;
}
.mainContentsBox a {
    text-decoration: underline;
}
.mainContentsBox img {
    margin-top: 19px;
    border: solid 2px #333;
}
.mainContentsBox .mainContentsBoxText p {
    margin-bottom: 15px;
}
.mainContentsBox .mainContentsBoxText ol {
    margin-top: 1em;
    margin-left: 1.5em;
}
.mainContentsBox .mainContentsBoxText ol li {
    list-style-type: decimal;
    padding-top: 10px;
}
.mainContentsBox .mainContentsBoxText ol li .mainContentsBoxTextListNest {
    margin-left: 80px;
    margin-top: 50px;
    margin-bottom: 60px;
}
.mainContentsBox .mainContentsBoxText p~ol {
    margin-top: 2em;
}
.mainContentsBox .mainContentsBoxText .releaseDate {
    text-align: right;
}
.mainContentsBox.faq {
    padding-bottom: 0px;
    margin: 0 auto;
}
.mainContentsBox.faq.lastBlock {
    margin-bottom: 70px;
}
.mainContentsBox.terms {
    padding-bottom: 80px;
}
.mainContentsBoxSeparate {
    display: flex;
    min-width: 1100px;
    justify-content: flex-end;
    margin-bottom: 70px;
}
.mainContentsBoxSeparate>h2 {
    width: 285px;
}
.mainContentsBoxSeparate>div {
    width: 815px;
}
.centerCatchCopy {
    font-size: 30px;
    font-weight: bold;
    text-align: center;
    margin-bottom: 50px;
    padding-top:0;
    line-height: 1.6em;
}
.centerCatchCopy.camp {
    margin-bottom: 0;
}
.centerCatchCopy p {
    font-size: 18px;
}
.centerCatchCopy.bottomMarginNone {
    margin-bottom: 0;
}
.importantNotices {
    text-align: center;
    background-color: #ffffff;
    padding: 10px 0 40px;
}
.importantNotices .infoText {
    font-size: 80%;
}
.importantNotices a {
    text-decoration: underline;
}
.importantNotices .information {
    font-weight: bold;
    margin: 10px 0 10px;
}
.rightBox .importantNotices {
    margin-top: 2em;
}
.index_btm_bn,
.page_bn_area {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
}
.index_btm_bn{
    margin-top: 60px;
}
.page_bn_area.monthly_page_bn {
    display: flex;
    justify-content: center;
    padding-top: 50px;
}
.page_bn_area {
    margin: 0 0 20px;
}
/* #meetingroompoint .page_bn_area → css/stores.css（分割前は上記 .page_bn_area の直後） */
.btm_bn,
.bn_area {
    max-width: 450px;
    width: 90%;
    margin: 10px;
}
.page_bn_area.col1 {
    max-width: none;
    width: 100%;
}
/* バナーが2個の場合 */
.page_bn_area:has(.bn_area:nth-child(2)):not(:has(.bn_area:nth-child(3))) {
  gap: 50px;
}
/* バナーが1個の場合 */
.page_bn_area:has(.bn_area:nth-child(1)):not(:has(.bn_area:nth-child(2))) {
  gap: 0;
}
.col1 .bn_area {
    max-width: none;
    width: 60%;
} 
/* ショートコード */
.postBn {
    margin: 30px 0 !important;
    width: 80%;
}
/* 各セクション */
.detailBox {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}
.detailBoxInwrap {
    width: 470px;
    background-color: white;
    padding: 10px 0 20px;
}
/* ボタン */
.yellowArrowLinkTextWrap.arrowRight{
    text-align: right;
    flex: auto;
}
.yellowArrowLinkText {
    display: inline-block;
    position: relative;
    text-decoration: none;
    color: #333;
    padding-bottom: 0.2em;
    padding-left: 2px;
    padding-right: 8px;
    margin-top: 18px;
    font-size: 14px;
    font-weight: bold;
    line-height: 1.8;
    margin-right: 12px; /*三角の幅分*/
}
.yellowArrowLinkText::after {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 2px;
    background-color: #F1D661;
}
.yellowArrowLinkText::before {
    content: '';
    position: absolute;
    right: -12px;
    bottom: 0px;
    width: 0;
    height: 0;
    border-left: 12px solid #F1D661;
    border-top: 8px solid transparent;
    border-bottom: 0px solid transparent;
}
.yellowArrowLink {
    position: relative;
    margin-top: 18px;
    font-weight: bold;
}
.yellowArrowLink span::before {
    position: absolute;
    content: '';
    top: 12px;
    left: 316px;
    width: 0;
    height: 0;
    border: none;
    border-right: solid 15px transparent;
    border-bottom: solid 15px #F1D661;
}
.yellowArrowLink span::after {
    position: absolute;
    content: '';
    top: 24px;
    left: 146px;
    width: 37%;
    border-bottom: solid 3px #F1D661;
}
/* プラン情報 */
.PlanType {
    width: 100%;
    margin-left: 58px;
    padding: 8px 0 6px 11px;
    border-left: solid 8px #D2CBC6;
    font-size: 20px;
}
.pricetable {
    margin-top: 12px;
}
.p-scrollable {
    overflow-x: auto;
    margin: 0 auto;
    text-align: center;
}
.p-plan-table {
    width: auto;
    border: solid 1px #333333;
    background-color: #FFF;
}
.p-plan-table .nebiki{
    text-decoration: line-through;
    color: #a5a5a5;
}
.pricetable.col2-table .p-plan-table {
    max-width: 650px;
    min-width: 0;
}
.pricetable .p-scrollable table {
    table-layout: fixed;
    white-space: nowrap;
}
.pricetable .p-scrollable table.table2lines {
    display: inline-table;
}
.pricetable .p-scrollable table th {
    background-color: #6B6B6B;
    color: #FFF;
    font-weight: normal;
}
.pricetable td, .pricetable th {
    padding: 9px 20px 9px;
    line-height: 1.3;
    vertical-align: middle;
    border-collapse: collapse;
    border: solid 1px #333333;
    text-align: left;
}
.booth-rsv-table th {
    padding: 9px 15px 9px 10px;
}
.pricetable .p-call {
    text-align: right;
}
.pricetable.mtgroom-cam .p-call {
    text-align: center;
}
.pricetable .table2lines td {
    height : 37px;
}
.pricetable.m-table {
    margin-bottom: 40px;
}
.tab-box .pricetable.m-table {
    margin-bottom: 0px;
}
.detail_plan {
    margin-bottom: 50px;
}
.detail_plan .yellowButton {
    width: 390px;
    font-weight: normal;
    height: 55px;
    font-size: 16px;
}
.detail_plan .pricetable + .yellowButton {
    margin: 20px auto 10px;
    width: auto;
    height: 38px;
    width: 170px;
}
.detail_plan .cam_label{
    background: #ffeea1;
    font-size: 14px;
    padding: 2px 4px 0;
    margin-right: 10px;
}
.detail_plan h3{
    color: #494949;
    font-size: 16px;
}
.detail_plan .PlanType{
    margin: 30px 0 20px;
}
.detail_plan .col2-wrap {
    display: flex;
    align-items: baseline;
}
.detail_plan .col2-wrap p {
    padding-right: 80px;
}
.detail_plan .col2-wrap div {
    width: 50%;
}
.detail_plan .col2-wrap .pricetable {
    margin: auto;
}
.detail_plan .col2-wrap div .p-scrollable {
    overflow-x: unset;
    margin: 0;
}
.comp-planWrap {
    padding-top: 60px;
}
.comp-planWrap .detail_plan{
    margin-top: 30px;
}
.comp-planWrap .detail_plan .PlanType{
    margin-top: 0;
}
.mainContents.price {
    background: #fff;
    width: 100%;
    padding-bottom: 120px;
}
/* .mainContents.price … .contactSubmit → css/wpcf7-theme.css */
/* 月額プランページ */
.price_fix .page_bn_area.monthly_page_bn {
    padding-top: 20px;
}
.monthlyStepWrap {
    display: flex;
    justify-content: space-evenly;
    margin: 32px 0 35px 0;
}
.monthlyStepInwrap {
    width: 320px;
}
.monthlyStepWrap .monthlyStepInwrap {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0;
    position: relative;
}
.monthlyStepWrap .monthlyStepInwrap:not(:last-child)::after {
    content: "";
    position: absolute;
    background-image: url(img/indexArrow.svg);
    top: 34%;
    left: 100%;
    border: 15px solid transparent;
    border-top: 15px solid #F1D661;
    z-index: 1;
    transform: rotate(0.75turn);
}
.monthlyStepInwrap .monthlyStepText {
    font-size: 14px;
    line-height: 1.6;
    margin-top: 16px;
}
/* トップ */
.indexIntroductionUseInwrap{
    display: flex;
    flex-direction: column;
}
.indexIntroductionUseInwrap .monthlyStepText p span {
    font-size: 12px;
    color: #666666;
}
.indexWrap .blogThumbnailText .blogThumbnailTitle{
    margin-bottom: 0;
    font-size: 14px;
}
/* トップここまで */
/* プランつづき */
.monthlyStepImg{
    width: 120px;
}
.monthlybr-sp {
    display: none;
}
.monthlyStepText a {
    display: inline-block;
    padding: 0;
    border-bottom: 3px solid #F0D254;
    padding: 0 3px;
    text-decoration: none;
    line-height: 1;
    font-weight: bold;
}
.yellowArrowLink img{
    height: 25px;
    padding: 2px 3px 6px 2px;
}
/* STORES 店舗一覧 */
.scrollStore {
    margin-bottom: 40px;
}
.scrollStore a {
    color: #333333;
    text-decoration: underline;
    font-size: 18px;
    margin-right: 40px;
}
.scrollStore .storeListLab a {
    margin-right: 10px;
}
.scrollStore a::before {
    content: "↓";
}
.scrollStore.storeListStr {
    margin: 0 auto 90px;
    width: 815px;
}
.scrollStore.storeListStr h3 {
    font-size: 20px;
    margin-top: 20px;
}
.scrollStore.storeListStr h4 {
    font-size: 20px;
    margin-top: 20px;
}
.scrollStore.storeListStr ul {
    width: 90%;
    margin-left: 40px;
    margin-bottom: 20px;
}
.scrollStore.storeListStr ul::after {
    content: "";
    display: block;
    clear: both;
}
.scrollStore.storeListStr ul li {
    width: 33%;
    display: block;
    float: left;
}
.scrollStore.storeListStr.store-room a::before {
    content: "";
}
.scrollStore.storeListStr.store a::before {
    content: "";
}
.scrollStore.storeListStr.store a::after {
    content: ">";
}
.mainContentsBoxSeparate .leftBox {
    width: 280px;
    padding-right: 10px;
}
.mainContentsBoxSeparate .rightBox {
    background-color: transparent;
    width: 820px;
}
.mainContentsBlog h2 {
    padding: 0;
    font-size: 28px;
    margin-bottom: 20px;
}
.mainContentsBlog .leftBox {
    padding-right: 30px;
}
.centerCatchCopy p {
    font-size: 18px;
    font-weight: normal;
    line-height: 32px;
    padding: 20px 0;
    letter-spacing: 0;
}
.centerCatchCopy .yellowButton {
    width: 300px;
    margin-top: 10px;
    font-size: 17px;
}
.centerCatchCopy .yellowButton .lh14 {
    line-height: 1.4 !important;
}
.centerCatchCopy.centerCatchCopySideline {
    font-size: 36px;
    position: relative;
    padding: 0 2em;
    margin-bottom: 150px;
    text-align: center;
}
.centerCatchCopy.centerCatchCopySideline::before,
.centerCatchCopy.centerCatchCopySideline::after {
    content: "";
    position: absolute;
    bottom: 55%;
    width: 20%;
    border-top: 2px solid #000;
}
.centerCatchCopy.centerCatchCopySideline::before {
    left: 0;
    background-color: #fff;
}
.centerCatchCopy.centerCatchCopySideline::after {
    right: 0;
    background-color: #f1d661;
}
/* /store/ページのみ */
.storeLink {
    display: flex;
    justify-content: center;
}
.storeLink .yellowButton {
    margin: 0 17px 0 0;
    font-weight: normal;
    height: 49px;
    padding: 10px 20px;
    width: 380px;
}
.storeLink .yellowButton a {
    width: 100%;
    text-align: center;
}
.storeLink .yellowButton svg {
    transform: rotate(90deg);
}
/* 店舗特徴タグ（トップ店舗一覧・店舗一覧カード共通）— coworking 移設コメント外に残す */
.storeListFacilities {
    display: flex;
    justify-content: start;
    flex-wrap: wrap;
    margin-bottom: 19px;
    margin-left: 10px;
}
ul.storeListFacilities.toppage {
    margin-left: 0px;
}
.storeListFacilities .storeListFacility {
    border: solid 1px #777;
    border-radius: 2px;
    padding: 3px 6px 5px 3px;
    color: #333;
    letter-spacing: 0;
    margin: 4px 10px 4px 0px;
    font-size: 13px;
    line-height: 1;
    text-align: center;
}
.storeListFacilities .storeListFacility p {
    padding-left: 3px;
}
.storeListFacilities .storeListFacility img {
    height: 19px;
}
.storeListFacilities .storeListFacility .storeImg img:hover {
    opacity: 0.7;
    transition: 0.8s;
}
/*運営会社ページ*/
.o_com h2 {
    font-weight: bold;
    padding-top: 50px;
    padding-bottom: 30px;
}
.o_com .table1 {
    text-align: left;
    width: 100%;
}
.o_com .table1 tr {
    padding: 25px 0;
    display: flex;
    border-top: solid 1px #333;
}
.o_com .table1 tr:last-child {
    border-bottom: solid 1px #333;
}
.o_com .table1 th {
    width: 30%;
}
.serviceWrap {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.serviceInWrap {
    width: 30%;
    margin-bottom: 30px;
    overflow: hidden;
}
.serviceLogo {
    overflow: hidden;
}
.serviceLogo img:hover {
    transform:scale(1.1);
    transition:1s all;
}
.serviceName {
    margin: 25px 0 10px;
}
/* ===================================================================
会議室予約ページ
 =================================================================== */
.reserveCard {
    background-color: #fff;
    box-shadow: 0 2px 2px rgba(0, 0, 0, 0.1);
    margin: 20px 0;
    border-radius: 3px;
}
.storeLabel {
    display: flex;
    flex-wrap: wrap;
    padding: 33px;
    width: 40%;
}
.storeLabelName {
    width: 100%;
}
.reserveCards h4:not(:first-child){
    margin-top: 50px;
}
.reserveCard tr:not(:last-child) {
    border-bottom: solid 1px #D9D9D9;
}
.reserveCard td {
    text-align: center;
}
.reserveCard td:first-child {
    padding-left: 40px;
}
.reserveCard td:last-child {
    padding-right: 40px;
}

/* ===================================================================
スペース予約モーダル
 =================================================================== */
 .rs-modal-overlay {
     display: none;
     position: fixed;
     z-index: 9999;
     width: 100%;
     height: 100%;
     left: 0;
     top: 0;
     background-color: rgba(0,0,0,0.6);
 }
 .rs-modal-content {
     position: relative;
     width: 90%;
     max-width: 550px;
     max-height: 90vh;
     margin: 65px auto;
     padding: 20px;
     border: 1px solid #888;
     border-radius: 10px;
     background-color: #fefefe;
     text-align: center;
     overflow-y: auto;
 }
 .rs-trigger-btn {
     padding: 15px 30px;
     border: none;
     border-radius: 5px;
     background-color: #fcae26;
     font-size: 18px;
     color: white;
     cursor: pointer;
 }
 .rs-btn-grid {
     display: grid;
     gap: 10px;
     margin-top: 20px;
 }
 #rs-store-list,
 [data-rs-store-list] {
     grid-template-columns: 1fr 1fr;
 }
 #rs-space-list,
 [data-rs-space-list] {
    grid-template-columns: 1fr 1fr;
 }
 .rs-selection-btn {
     padding: 15px;
     border: 1px solid #ccc;
     border-radius: 5px;
     background: #f0f0f1;
     font-size: 16px;
     color: #333;
     transition: 0.3s;
     cursor: pointer;
 }
 .rs-selection-btn:hover {
     background: #e0e0e0;
 }
 h3.reserve-popup {
     display: block;
 }
 .rs-room-block {
     padding-bottom: 20px;
     border-bottom: 1px dashed #ccc;
    letter-spacing: 0;
}
 .rs-room-title {
     display: block;
     font-size: 1.1em;
     font-weight: bold;
     color: #333;
 }
 .rs-campaign-box {
     margin-bottom: 10px;
     padding: 10px;
     border: 2px solid #e74c3c;
     border-radius: 8px;
     background-color: #fff5f5;
 }

 .rs-campaign-text {
     display: block;
     margin-bottom: 5px;
     font-size: 0.9em;
     font-weight: bold;
     color: #c0392b;
 }

 .rs-btn-campaign {
     display: block;
     padding: 10px;
     border-radius: 5px;
     background: #e74c3c;
     font-size: 15px;
     font-weight: bold;
     color: #fff;
     text-decoration: none;
 }

 .rs-btn-normal {
     display: block;
     padding: 10px;
     border-radius: 5px;
     background: #f1d661;
     font-size: 15px;
     font-weight: bold;
     color: #333;
     text-decoration: none;
 }

 .rs-normal-label {
     display: block;
     margin-top: 10px;
     margin-bottom: 5px;
     font-size: 0.8em;
     color: #666;
 }

 .rs-btn-campaign:hover,
 .rs-btn-normal:hover {
     color: #333;
     opacity: 0.8;
 }

 .popup-footer {
     display: flex;
     flex-direction: column;
     align-items: center;
     gap: 10px;
     margin-top: 25px;
     margin-bottom: 25px;
 }

 .rs-back-btn {
     border: none;
     background: none;
     font-size: 0.9rem;
     color: #333;
     text-decoration: underline;
     cursor: pointer;
 }

 .rs-store-detail-btn {
     display: inline-block;
     margin-top: 0px;
     margin-bottom: 0px;
     font-size: 0.9rem;
     text-decoration: underline;
     cursor: pointer;
 }

 /* ステップヘッダー(戻るボタン + h3タイトル + 閉じるボタン) */
 .rs-step-header {
     display: flex;
     align-items: center;
     justify-content: center;
     gap: 5px;
     margin-bottom: 20px;
     position: relative;
 }

 /* 戻るボタンがないヘッダー(step-1用) */
 .rs-step-header-no-back {
     justify-content: space-between;
 }

 /* ヘッダー内の戻るボタン */
 .rs-header-back-btn {
     background: none;
     border: none;
     font-size: 20px;
     color: #333;
     cursor: pointer;
     padding: 5px;
     display: flex;
     align-items: center;
     justify-content: center;
     transition: color 0.3s ease;
     flex-shrink: 0;
     position: absolute;
     left: 0;
 }

 .rs-header-back-btn:hover {
     color: #0066cc;
 }

 /* ヘッダー内の閉じるボタン */
 .rs-header-close-btn {
     background: none;
     border: none;
     font-size: 24px;
     color: #aaa;
     cursor: pointer;
     padding: 5px;
     display: flex;
     align-items: center;
     justify-content: center;
     transition: color 0.3s ease;
     margin-left: auto;
     flex-shrink: 0;
     position: absolute;
     right: 0;
 }

 .rs-header-close-btn:hover {
     color: #333;
 }

 /* ポップアップタイトルの調整 */
 .rs-step-header .rserve-popup {
    margin: 0;
    font-weight: 600;
    font-size: large;
 }

 .rs-store-detail-btn:hover {
     text-decoration: none;
     opacity: 0.8;
 }
 /* 16:7比率の画像コンテナ */
 .rs-result-img-wrapper {
     position: relative;
     width: 100%;
     padding-top: 43.75%; /* 7/16 = 0.4375 = 43.75% */
     overflow: hidden;
     border-radius: 8px;
     margin-bottom: 15px;
 }
 .rs-result-img-wrapper img {
     position: absolute;
     top: 0;
     left: 0;
     width: 100%;
     height: 100%;
     object-fit: cover; /* 中央トリミング */
     object-position: center; /* 中央を基準に表示 */
     border-radius:8px;
     margin-bottom:15px;
 }

 .rs-header-back-btn:hover {
     color: #0066cc;
 }

 .rs-header-back-btn i {
     pointer-events: none;
 }

 /* 子ルーム2カラムレイアウト(デフォルト) */
 #rs-link-container.rs-multi-rooms,
 [data-rs-link-container].rs-multi-rooms {
     display: grid;
     grid-template-columns: repeat(2, 1fr); /* 2カラム */
     gap: 10px 15px; /* 上下10px、左右15px */
 }

 /* 子ルームが1つの場合は1カラム */
 #rs-link-container.rs-single-room,
 [data-rs-link-container].rs-single-room {
     display: block;
 }

 #rs-link-container.rs-single-room .rs-room-block,
 [data-rs-link-container].rs-single-room .rs-room-block {
     margin-bottom: 10px;
 }

 /* 各ルームブロックのスタイル */
 .rs-room-block {
     display: flex;
     flex-direction: column;
     gap: 8px;
 }

 .rs-room-title {
     font-weight: bold;
     font-size: 16px;
     display: block;
 }
 /* 予約ページ(reserve)固有 */
 .rs-page-container {
     max-width: 800px;
     margin: 0 auto;
     padding: 40px 20px;
 }
 .rs-flow-box {
     background-color: #fefefe;
     border: 1px solid #ddd;
     border-radius: 10px;
     padding: 30px;
     max-width: 600px; /* PCで見やすくなるよう少し幅を広げました */
     margin: 0 auto;
     box-shadow: 0 4px 15px rgba(0,0,0,0.05);
     text-align: center;
     min-height: 400px;
 }
 .rs-btn-grid { 
    display: grid; gap: 10px; margin-top: 20px; 
 }
 #rs-store-list,
 [data-rs-store-list] {
    grid-template-columns: 1fr 1fr;
 }

/* よくある質問箇所 */
.qaLists {
    background-color: #fff;
    padding: 10px 41px;
}
.qaLists .accordionList {
    width: 100%;
    font-size: 14px;
    border-bottom: 1px solid #ccc;
    padding: 5px 0;
}
.qaLists .accordionList:last-child {
    border-bottom: none;
}
.qaLists .accordionList .qaItem {
    position: relative;
    cursor: pointer;
}
.qaLists .accordionList .qaItem.open {
    font-weight: bold;
}
.qaLists .accordionList .qaItem::after {
    content: "";
    position: absolute;
    right: 33px;
    top: 25%;
    transition: all 0.2s ease-in-out;
    display: block;
    width: 8px;
    height: 8px;
    border-top: solid 2px #333;
    border-right: solid 2px #333;
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
}
.qaLists .accordionList .qaItem.open::after {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    top: 32%;
}
.qaLists .accordionList .qaItemChild {
    font-size: 14px;
    display: none;
    padding: 20px;
    line-height: 1.8;
}
.qaLists .accordionList .qaItemChild a {
    text-decoration: underline;
}
.qaLists .accordionList .qaItemChild a[href*="tel"] {
    text-decoration: none;
}
.qaLists .accordionList .qaItemChild ol {
    background: #f6f6f6;
    border: dotted 1px #888;
    display: inline-block;
    padding: 13px;
    margin: 1em 0;
}
/* COWORKING-SPACE コワーキングスペース・店舗別ページ */
.coworking .mainContents, .coworking  .storeMap{
    width: 900px;
    text-align: left;
}
.slider_thumb, .thumb{
  opacity: 0;
  transition: opacity .4s linear;
  height: 0
}
.slider_thumb.slick-initialized, .thumb.slick-initialized {
  opacity: 1;
  height: auto;
}

.slick-slide {
    position: relative;
}
/* Slick初期化完了まで、形だけ維持して隠す */
.slider_thumb {
    opacity: 0;
    overflow: hidden;
    height: 0;
    width: 100%;
    min-height: 420px;
    background-color: #f0f0f0;
}

/* Slick初期化後 */
.slider_thumb.slick-initialized {
    opacity: 1;
    min-height: 0;
    height: auto;
    aspect-ratio: auto;
    transition: opacity 0.3s ease;
    overflow: visible;
}
/* 画像がはみ出さないための強制ルール */
.slider_thumb img {
    max-width: 100%;
    height: auto;
    object-fit: contain; /* または cover。デザインに合わせて選択 */
}
.storeImgSlider .slick-slide .caption {
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translate(-50%, 0%);
    -webkit-transform: translate(-50%, 0%);
    -ms-transform: translate(-50%, 0%);
    z-index: 2;
    width: 100%;
    padding: 2px;
    background: rgba(0, 0, 0, .5);
    color: #fff;
    font-size: 12px;
    opacity: 0;
    transition: .3s ease;
}
.storeImgSlider .slick-current .caption {
    opacity: 1;
    transition-delay: .5s;
}
.storeImgSlider {
    width: 100%;
    max-width: 710px;
    margin: 0 auto;
}
.storeImgSlider .slick-slide:focus {
    outline: none;
}
.storeImgSlider .slick-dots li button:before {
    font-size: 12px !important;
}
.storeImgSlider .slick-prev,
.storeImgSlider .slick-next {
    z-index: 1;
}
.storeImgSlider .slick-prev::before,
.storeImgSlider .slick-next::before {
    font-size: 22px;
}
.slick-next {
    right: -5px !important;
}
.slick-prev {
    left: -5px !important;
}
.storeMap .slick-prev {
    left: 0;
}
.storeMap .slick-next {
    right: 0;
}
.mainWrap .storeName::after{
    content: none;
}
/* .mainContentsCoworking .PlanCol* → css/top.css */
/* .mainContentsStoreNews* → css/stores.css */
/* .linkUdl → css/stores.css */
/* 店内図下カルーセル ※会議室詳細ページで使用しているものと同じ */
.slick-slide {
    position: relative;
}
.storeImgSlider .slick-slide .caption {
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translate(-50%, 0%);
    -webkit-transform: translate(-50%, 0%);
    -ms-transform: translate(-50%, 0%);
    z-index: 2;
    width: 100%;
    padding: 2px;
    background: rgba(0, 0, 0, .5);
    color: #fff;
    font-size: 12px;
    opacity: 0;
    transition: .3s ease;
}
.storeImgSlider .slick-current .caption {
    opacity: 1;
    transition-delay: .5s;
}
.storeImgSlider {
    width: 100%;
    max-width: 710px;
    margin: 0 auto;
}
.storeImgSlider .slick-slide:focus {
    outline: none;
}
.storeImgSlider .slick-dots li button:before {
    font-size: 12px !important;
}
.storeImgSlider .slick-prev,
.storeImgSlider .slick-next {
    z-index: 1;
}
.storeImgSlider .slick-prev::before,
.storeImgSlider .slick-next::before {
    font-size: 22px;
}
.slick-next {
    right: -5px;
}
.slick-prev {
    left: -5px;
}
.slick-prev, .slick-next{
    z-index: 1;
}
.storeMap .slick-prev {
    left: 0;
}
.storeMap .slick-next {
    right: 0;
}
/* カルーセルここまで */

.storeMap .tab-content, .monthly_tab .tab-content {
    display: flex;
    flex-wrap: wrap;
    width: 850px;
    margin: 0 auto 30px;
}
.coworking .p-plan-table {
    width: 70%;
    margin: 0;
}
.coworking .mtgroom-cam .p-plan-table:first-of-type{
    margin-bottom: 20px;
}
.coworking .mtgroom-cam p{
    font-weight: bold;
    margin-bottom: 5px;
}
.coworking .mtgroom-cam td:first-of-type{
    color: #ff7400;
}
.coworking .tab-content .p-plan-table {
    margin: 0 auto;
}
.monthly_tab .tab-content {
    justify-content: center;
    width: 100%;
}
.coworking .monthly_tab .tab-content .tabLabel{
    flex: 0 1 160px;
    letter-spacing: 2px;
}
.monthly_tab .tab-content, .detail_plan {
    margin-bottom: 20px;
}
.monthly_tab .tab-content{
    background: #fff;
}
.coworking .tab-content{
    background: none;
}
.coworking .tab-content .tab-box{
    background: #fff;
    text-align: left;
}
.coworking .tab-box .detail_plan{
    margin: 0 0 10px;
}
.coworking .infoList li{
    font-size: 12px;
}
.storeMap .tab-content::after {
    content: '';
    display: block;
    width: 100%;
    height: 3px;
    order: -1;
    background: #999;
}
.storeMap .tab-content .tabLabel, .monthly_tab .tab-content .tabLabel {
    flex: 1;
    order: -1;
    text-align: center;
    color: #444;
    background: #d0c9c3;
    border-radius: 3px 3px 0 0;
    margin-right: 0;
    padding: 3px;
    transition: .5s ;
    cursor: pointer;
}
.monthly_tab .tab-content .tabLabel{
    flex: 0 1 200px;
    font-size: 14px;
    line-height: 1.2;
    letter-spacing: 1px;
    padding: 8px 0;
}
.monthly_tab .tab-content .tabLabel:hover{
    background: #999999;
    color: #fff;
}
.monthly_tab .tab-content .tabLabel {
    border-radius: 3px;
    margin: 0 5px 10px;
}
.coworking .monthly_tab .tab-content .tabLabel {
    margin: 0 10px 10px;
}
.storeMap .tab-content .tabLabel:nth-last-of-type(1), .monthly_tab .tab-content .tabLabel:nth-last-of-type(1){
    margin-right: 0;
}
.storeMap .tab-content input[type="radio"], .monthly_tab .tab-content input[type="radio"] {
    display: none;
}
.storeMap .tab-content .tab-box, .monthly_tab .tab-content .tab-box {
    width: 100%;
    height: 0;
    overflow: hidden;
    opacity: 0;
}
.coworking .tab-content .tab-box {
    width: 80%;
}
.coworking .floorTab {
    margin-top: 20px;
}
.coworking .floorTab .tab-box{
    text-align: center;
    width: 100%;
}
.coworking .floorTab .tabLabel{
    margin-right: 5px;
}
.coworking .floorTab label span{
    font-size: 14px;
    line-height: 1.5;
}
.storeMap .tab-content input:checked + .tabLabel, .monthly_tab .tab-content input:checked + .tabLabel {
    color: #fff;
    background: #999;
}
.coworking .monthly_tab .tab-content input:checked + .tabLabel{
    color: #444;
    background: #F1D661;
    position: relative;
}
.storeMap .tab-content input:checked + .tabLabel + .tab-box, .monthly_tab .tab-content input:checked + .tabLabel + .tab-box {
    padding: 15px;
    height: auto;
    overflow: auto;
    box-shadow: 0 0 5px rgba(0,0,0,.2);
    transition: .5s opacity;
    opacity: 1;
}
.coworking .monthly_tab .tab-content input:checked + .tabLabel + .tab-box{
    padding: 10px 30px;
}
.coworking .tab-content input[type="radio"]:checked + .tabLabel::after {
    content: '';
    position: absolute;
    bottom: -10px;
    left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 0;
    border-left: 10px solid transparent;
    border-right: 10px solid transparent;
    border-top: 10px solid #F1D661;
    transition: .2s;
}
.storeLocation li{
    font-size: 14px;
}
.coworking .faq h3{
    font-size: 18px;
}
/* .allMeetingRoomList .storeMeetingRoomBox*（sidebar 会議室・個室一覧）→ css/stores.css */
.storeFacilityList ul {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
}
.storeFacilityList ul li {
    flex-basis: 20%;
    text-align: center;
    font-size: 16px;
    font-weight: bold;
    letter-spacing: 0.02em;
}
.storeFacilityList ul li .storeFacilityIcon {
    height: 100px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.storeFacilityList ul li .facilityCaption {
    line-height: 1.4em;
    height: 50px;
    margin: 15px 0 0px 0;
    font-weight: normal;;
}
.storeFacilityList ul li .facilityCaption span {
    font-size: 13px;
}
.indexFacilityListWrap ul li {
    flex-basis: 11%;
    font-size: 12px;
    margin: 0 auto !important;
    display: flex;
    flex-direction: column;
    align-items: center;
}
.indexFacilityListWrap ul li .storeFacilityIcon {
    width: 60px;
}
.indexFacilityListWrap ul li .facilityCaption{
    margin: 0;
}
.facilitySup {
    font-size: 80%;
    text-align: left;
    margin-top: 20px;
}
.facilityIntroTop .facilitySup {
    color: #FFF;
    margin-right: 10px;
}
/* MEETING-ROOM 会議室・店舗別ページ */
/* .storeLocation .google_staticMap → css/stores.css */
.RoomDetail {
    display: flex;
    justify-content: space-between;
}
.RoomDetail .yellowButton .reservation {
    margin-right: 0px;
    margin-left: 10px;
}
/* 予約・CF7 フォーム周り → css/wpcf7-theme.css */
/* BLOG ブログ */
.blogLeftContent {
    display: flex;
    flex-direction: column;
    width: 100%;
}
.mainContentsBlog,
.mainContentsMatome {
    display: flex;
    justify-content: space-between;
    width: 100%;
}
.coworking .mainContentsBlog{
    display: block;
    margin-bottom: 60px;
}
/* 店舗コワーキング固定（stores.css のみ）— 上記 .blogThumbnails ベースへの上書き */
.coworking .mainContentsBlog .blogThumbnails .blogThumbnailBox{
    flex-grow: 1;
}
.coworking .mainContentsBlog .blogThumbnails .blogThumbnailBox .blogThumbnailmage{
    width: 100%;
}
.coworking .mainContentsBlog .yellowArrowLink{
    margin-top: 0;
}
.coworking .mainContentsBlog.cwInwrap .yellowArrowLink span::before {
    top: 18px;
    left: 105px;
}
.coworking .mainContentsBlog.cwInwrap .yellowArrowLink span::after {
    top: 30px;
    left: 0;
    width: 110px;
}
/* .blogThumbnails ベースは style.css に集約（taxonomy.css へ移さない理由）
   同マークアップが category.php / page-blog.php / index.php / page-frontpage.php /
   page-store__coworking__*.php 等で使われ、読み込む分割 CSS が
   taxonomy・top・stores とページで異なる。店舗ページは taxonomy を読まないため、
   共通スタイルは常時読み込みの本ファイルに置く。.matomeThumbnails は一覧系で隣接利用のため同ブロックに含む。 */
.blogThumbnails,
.matomeThumbnails {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-content: flex-start;
}
.blogThumbnails .blogThumbnailBox {
    width: 258px;
    background-color: #fff;
    margin-right: 20px;
    margin-bottom: 40px;
    position: relative;
}
.blogThumbnails .blogThumbnailBox:last-child {
    margin-right: 0;
}
.blogThumbnails .blogThumbnailBox a.blogThumbnailLink {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.blogThumbnailmage {
    width: 258px;
    height: 200px;
    position: relative;
    overflow: hidden;
}
.matomeThumbnailmage {
    width: 100%;
    height: 350px;
    position: relative;
    overflow: hidden;
}
.blogThumbnailmage img,
.matomeThumbnailmage img {
    position: absolute;
    width: auto;
    height: auto;
    top: 50%;
    left: 50%;
    min-height: 100%;
    min-width: 100%;
    -ms-transform: translateX(-50%) translateY(-50%);
    -moz-transform: translateX(-50%) translateY(-50%);
    -webkit-transform: translateX(-50%) translateY(-50%);
    transform: translateX(-50%) translateY(-50%);
}
.blogThumbnailText,
.matomeThumbnailText {
    letter-spacing: 0.04em;
    padding: 30px 17px 30px;
}
.blogThumbnailText .blogThumbnailDate {
    font-size: 14px;
    color: #666;
}
.blogThumbnailText .blogThumbnailTitle,
.matomeThumbnailText .matomeThumbnailTitle {
    font-size: 16px;
    font-weight: bold;
    margin-top: 5px;
    margin-bottom: 20px;
    line-height: 1.5;
}
.blogThumbnailText .blogThumbnailDetail,
.matomeThumbnailText .matomeThumbnailDetail {
    font-size: 14px;
    line-height: 24px;
    margin-bottom: 1em;
}
/* CF7 共通 → css/wpcf7-theme.css（ブログ個別 .blogArticle .wpcf7 は post.css） */
.slick-initialized .slick-slide {
    display: flex;
    justify-content: center;
    align-items: center;
}
.articleShareButton {
    margin-right: 0;
    margin-left: auto;
    margin-bottom: 50px;
    position: relative;
    text-align: center;
    width: 125px;
    letter-spacing: 0;
    font-size: 20px;
}
.articleShareButton a {
    margin-right: 10px;
}
.articleShareButton a:last-child {
    margin-right: 0;
}
/* 404ページ */
.error-404 {
    text-align: center;
    padding: 100px 0;
}
.error-404 .error-title {
    font-size: 60px;
}
.error-404 .page-title {
    font-size: 30px;
    color: #333;
}
.error-404 .page-title:after {
    border: none;
}
.error-404 p {
    margin-top: 30px;
    font-size: 16px;
    line-height: 27px;
}
.error-404 .home-button {
    background-color: #F1D761;
    padding: 20px 30px 15px;
    text-decoration: none;
    color: #333;
    font-weight: bold;
    border-radius: 3px;
    margin-top: 30px;
    display: inline-block;
    font-size: 16px;
    line-height: 20px;
}
/* CONTACT / CF7 → css/wpcf7-theme.css */
/* FACILITY 設備情報 */
.mainContentsFacilityIntro {
    margin-bottom: 120px;
}

.mainContentsFacilityIntro .facilityIntroTop {
    height: 450px;
    width: 100%;
    background-image: url(img/facilityIntroTopImg.jpg);
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.mainContentsFacilityIntro .facilityIntroTopCatch {
    color: #fff;
    font-weight: bold;
    font-size: 30px;
    text-align: center;
    margin-bottom: 100px;
}
.mainContentsFacilityIntro .facilityIntroTopIcons {
    padding: 0 70px;
    color: #fff;
}
.mainContentsFacilityIntro .facilityIntroTopIcons li {
    font-size: 20px;
    flex-basis: 25%;
}
.mainContentsFacilityIntro .facilityIntroTopIcons li span {
    font-size: 16px;
    font-weight: normal;
}
.mainContentsFacilityIntro .facilityIntroTopIcons li .facilityCaption {
    margin-top: 30px;
}
.mainContentsFacilityIntro .facilityIntroBottom {
    height: 205px;
}
.mainContentsFacilityIntro .facilityIntroBottom .facilityIntroBottomIcons {
    margin: 45px 20px;
}
.mainContentsFacilityBox {
    margin-bottom: 0;
}
.facilityLists {
    margin-top: 40px;
}
.facilityLists .facilityList {
    margin-bottom: 120px;
}
.facilityLists .facilityList:last-child {
    margin-bottom: 100px;
}
.facilityLists .facilityListsHead {
    color: #000;
    padding: 30px 10px;
    font-size: 30px;
    font-weight: bold;
    border-top: 3px solid #000;
    display: flex;
    align-items: center;
}
.facilityLists .facilityListsHead img {
    margin-right: 20px;
}
.facilityList ol {
    list-style-position: inside;
}
.facilityLists ol li {
    display: flex;
    align-items: center;
    border-top: 1px solid #ccc;
    counter-increment: number 1;
    padding-top: 10px;
    padding-bottom: 10px;
    font-size: 18px;
    letter-spacing: 0.02em;
}
.qaLists {
    margin-top: 0;
    margin-bottom: 50px;
}
.facilityLists.matomeLists ol li {
    display: block;
    border-top: none;
}
.matomeLists ol li a {
    position: relative;
}
.matomeLists ol li .children li a::before {
    content: " - ";
    padding-left: 40px;
}
.facilityLists ol li .facilityListName {
    margin-left: 45px;
    min-width: 330px;
}
.facilityLists ol li .facilityListComment {
    font-size: 14px;
}
.facilityLists ol li:last-child {
    border-bottom: 1px solid #ccc;
}
.facilityLists.matomeLists ol li:last-child {
    border-bottom: none;
}
.facilityLists ol li::before {
    font-size: 18px;
    content: "0"counter(number) " ";
    font-weight: bold;
    letter-spacing: 0.01em;
    padding-left: 0.5em;
    padding-right: 0.5em;
}
.matomeLists ol li::before {
    display: none;
}
.facilityLists ol li:nth-child(n+10)::before {
    content: counter(number) " ";
}
.matomeLists ol li:nth-child(n+10)::before {
    display: none;
}
.qaLists ol li:nth-child(n+10)::before {
    display: none;
}
/* ↓パンくずリスト */
.breadCrumb {
    font-size: 18px;
    margin-top: 90px;
}
.breadCrumb ol {
    display: flex;
    flex-wrap: wrap;
}
.breadCrumb ol li {
    color: #666;
}
.breadCrumb ol li::before {
    content: "/";
    padding: 0 0.4em;
    color: #000;
    font-weight: normal;
}
.breadCrumb ol li:first-child::before {
    content: "";
    padding: 0;
}
.breadCrumb ol .breadCrumbActive {
    font-weight: bold;
    color: #000;
}
.breadCrumb.blog_only {
    margin-top: 80px;
}
/* ここからフッター */
footer {
    background-color: #333;
    background-image: url(img/footer_bg.jpg);
    border-top: 4px solid #f1d661;
    padding: 20px 40px 20px;
    color: #ccc;
    font-size: 16px;
    display: flex;
    justify-content: center;
    position: relative;
    overflow: hidden;
    min-width: 1100px;
}
footer a {
    color: #ccc;
}
footer>div {
    z-index: 200;
}
footer::after {
    z-index: 100;
    content: "";
    position: absolute;
    top: 0;
    right: -360px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 730px 874px 0 874px;
    border-color: rgba(255, 255, 255, 0.05) transparent transparent transparent;
}
.footerLeft {
    padding-right: 30px;
    width: 400px;
}
.footerLeft .footerLogo .footerLogoImage img.icon {
    width: 40px;
    height: auto;
    margin-right: 10px;
}
.footerLeft .footerLogo .footerLogoImage img {
    width: 293px;
    height: 40px;
}
.footerLeft .footerLogo .footerLogoSNS {
    margin-top: 2rem;
}
.footerLeft .footerLogo .footerLogoSNS img {
    width: 36px;
    height: 36px;
}
.footerLeft .footerLogo .footerLogoSNS a {
    display: inline-block;
    margin-right: 10px;
}
.footerLeft .memberAppBtn {
    margin-top: 20px;
}
.footerLeft .memberAppBtn .yellowButton {
    color: #333!important;
}
.footerNav {
    min-width: 700px;
    position: relative;
}
.footerNav .footerNavMenu ul.footerNavMenuContents {
    display: flex;
    justify-content: space-between;
    margin-bottom: 20px;
    font-size: 16px;
}
.footerNav .footerNavMenu ul.footerNavMenuContents:last-of-type {
    margin-bottom: 60px;
}
.footerNav .footerNavMenu ul.footerNavMenuContents+ul.footerNavMenuContents {
    margin-top: 0px;
}
.footerNav .footerNavMenu ul.footerNavMenuContents.flex-start {
    justify-content: flex-start;
}
.footerNav .footerNavMenu ul.footerNavMenuContents.flex-start li {
    margin-right: 20px;
}
.footerNav .footerNavMenu ul.footerNavMenuAboutus {
    display: flex;
    justify-content: flex-end;
}
.footerNav .footerNavMenu ul.footerNavMenuAboutus li {
    font-size: 14px;
    margin-left: 20px;
}
.footerNav .footerCopyright {
    margin-top: 40px;
    text-align: right;
    font-size: 14px;
}
.rs-trigger-btn.rs-hide-all {
    display: none !important;
}
.fixed-btn {
    position: fixed;
    z-index: 999;
    bottom: calc(35% - 10px);
    right: -100px;
    width: 158px;
}
.fixed-btn .rs-trigger-btn {
    padding: 35px 20px;
    writing-mode: vertical-rl;
    background-color: #f1d661;
    color: #333;
    font-size: 16px;
    display: flex;
    border-radius: 3px;
    box-shadow: 0 2px 2px rgb(0 0 0 / 10%);
}
.fixed-btn .rs-trigger-btn p {
    right: 4px;
    position: relative;
}
.fixed-btn .rs-trigger-btn img {
    width: 22px;
    margin: 0 3px 10px 0;
}
.fixed-btn .rs-modal-content {
    margin: 140px auto;
}
/* ページ下部固定キャンペーンバナー */
.campaignBannerFixed {
    position: fixed;
    z-index: 9999;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.5s ease, visibility 0.5s ease;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

.campaignBannerFixed.isVisible {
    opacity: 1;
    visibility: visible;
}
/* 閉じるボタン */
.campaignBannerClose {
    position: absolute;
    top: -10px;
    right: -10px;
    width: 30px;
    height: 30px;
    background-color: #000;
    border-radius: 50%;
    border: 2px solid #fff;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background-color 0.3s ease;
}
.campaignBannerClose:hover {
    background-color: #333;
}
.campaignBannerClose::before,
.campaignBannerClose::after {
    content: '';
    position: absolute;
    width: 16px;
    height: 2px;
    background-color: #fff;
}
.campaignBannerClose::before {
    transform: rotate(45deg);
}
.campaignBannerClose::after {
    transform: rotate(-45deg);
}
/* バナーリンクと画像 */
.campaignBannerLink {
    display: block;
    line-height: 0;
}
.campaignBannerImage {
    display: block;
    max-width: 100%;
    height: auto;
}
/* タクソノミー */
.storeLabelWrap {
    display: flex;
    flex-wrap: nowrap;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 100;
    font-weight: bold;
    font-size: 80%;
}
.mainWrap div.storePr span,
.mainWrap div.storeStatusDetail span {
    width: auto;
}
.storeStatusDetail .store-open,
.storeStatusDetail .store-closed,
.store-pr {
    padding: 6px 19px 5px;
}
.store-pr {
    background-color: #FFF;
}
.storeStatusDetail .store-open {
    background-color: #F1D761;
}
.storeStatusDetail .store-closed {
    background-color: #ababab;
}
/* WP6.0になったときにmarginが取れたっぽい対応 */
.matomeTokusyu .wp-block-column:not(:first-child) {
    margin-left: 2em;
}
/* lightbox(Luminous) */
.lum-lightbox {
    z-index: 99999;
}
/* アコーディオンメニュー */
.accordion-title {
    text-decoration: none !important;
}
.accordion-title::after {
    content: "";
    position: absolute;
    right: -20px;
    top: 25%;
    transition: all 0.2s ease-in-out;
    display: block;
    width: 8px;
    height: 8px;
    border-top: solid 2px #333;
    border-right: solid 2px #333;
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
}
.accordion-title.open::after {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    top: 45%;
}

/* .view360Link / .storeMap .storeMapCaption .view360Link → css/stores.css */
/* スマホメニュー */

img.otoku-info {
    display: block;
    width: 80%;
    margin: auto;
}
.CustomPostHead {
    width: 1100px;
    margin-right: auto;
    margin-left: auto;
}
.mainWrap h1 span.headlineEn {
    font-size: 40px;
    position: relative;
    padding-top: 6px;
}
.mainWrap h1 span.headlineJa {
    font-size: 24px;
    letter-spacing: 00.11em;
    line-height: 30px;
}
.post-thumbnail.wp-block-image {
    display: block;
    text-align: center;
    margin-bottom: 2rem;
}

/* シンプルなテキストページの見出し */
.mainContentsBox h2.h2-normal {
    font-size: 24px;
    font-weight: bold;
    color: #333;
    border-bottom: 1px solid #333;
    padding-bottom: 6px;
    padding-top: 0px;
    padding-left: 0;
    padding-right: 0;
    margin-bottom: 30px;
    margin-top: 30px;
}
.mainContentsBox h2.h2-normal::before {
    content: none !important;
}
/* table 価格表 補足 .p-note → css/plan.css */
/* トップへ戻るボタン */
#page-top {
  position: fixed;
  z-index: 1000;
}
button.page-top {
  position: fixed;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 60px;
  height: 80px;
  right: -80px;
  bottom: calc(24% - 10px);
  color: #fff;
  cursor: pointer;
  opacity: 0;
  visibility: hidden;
  border: 0;
  background: #bdbdbd;
  transition: .2s;
  letter-spacing: 3px;
  font-weight: bold;
  border-radius: 4px 0 0 4px;
}
button.page-top i{
  position: absolute;
  font-size: 30px;
  color: #FFF;
  top: 15px;
}
button.page-top p{
  margin: 0;
  font-size: 15px;
  bottom: 13px;
  position: absolute;
}
button.page-top.is-active {
  opacity: 1;
  visibility: visible;
  right: -2px;
}
/* fieldset.hidden-fields-container → css/wpcf7-theme.css */

/* フッター上バナー */
.bn_wrap.bn_wrap_bt {
    display: flex;
    justify-content: center;
    margin: 20px 0;
}
/* ウィンドウサイズが小さくなった時の挙動↓ */
/* max-width:1340px 店舗イントロ番号 → css/stores.css */

/*PCのみ*/
@media (min-width: 768px) {
    /*ページ下部固定バナー*/
    .campaignBannerFixed {
        right: 20px;
        bottom: 20px;
        max-width: 350px;
    }
    
    .campaignBannerImageSp {
        display: none;
    }
}

/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
/*■■■■以下、タブレット 対応 ■■■■■■■■■■■■■■■■■■■■*/
/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/

@media screen and (max-width: 1024px) {
    header {
        min-width: unset;
    }
    .headerWrap {
        padding-right: 0;
        padding-left: 0;
        min-width: unset;
    }
    /* .index_top_bn 1024px → css/top.css */
    h1.headerLogo,
    div.headerLogo {
        margin-left: 2rem;
    }
    .headerNav {
        min-width: unset;
    }
    a.yellowButton.reserveRoomButton {
        display: none;
    }
    main {
        padding-right: 0;
        padding-left: 0;
        min-width: unset;
    }
    /* index 系 1024px の重複 → css/top.css */
    /* .storeFacilityList … facilityCaption 1024px → css/stores.css */
    /* .blogThumbnails タブレット — 一覧・アーカイブ共通（トップ内ブログ枠の 48% は top.css） */
    .blogThumbnails{
        justify-content: space-between;
    }
    .blogThumbnails, .matomeThumbnails {
        width: 98%;
        margin: 0 1%;
    }
    .blogThumbnailmage {
        width: 100%;
    }
    /* フッター */
   footer {
       flex-direction: column;
       min-width: auto;
       padding: 10vw 8vw;
   }
   .footerLeft {
       width: 100%;
       justify-content: space-between;
       padding: 0 0 5vw 0;
       border-bottom: 1px solid #ccc;
   }

   .footerLeft .footerLogo .footerLogoImage {
       margin-bottom: 40px;
   }
   .footerLeft .footerLogo .footerLogoImage img {
       width: 40vw;
       height: auto;
   }
   .footerLeft .footerLogo .footerLogoSNS img {
       width: 9.6vw;
       height: auto;
   }
   .footerLeft .footerLogo .footerLogoImage img.icon {
       width: 8vw;
       height: auto;
       margin-right: 30px;
   }
   .footerNav {
       width: 100%;
       min-width: auto;
       position: relative;
       padding-top: 7vw;
   }
   .footerNav .footerNavMenu {
       display: flex;
       flex-direction: column;
   }
   .footerNav .footerNavMenu ul.footerNavMenuContents {
        margin-top: 0;
        font-size: 18px;
        line-height: 2;
        flex-direction: column;
   }
   .footerNav .footerNavMenu ul.footerNavMenuContents .pc_none{
        display: block !important;
   }
   .footerNav .footerNavMenu ul.footerNavMenuContents.sp_none{
        display: none !important;
   }
    /* 店舗一覧 1024px → css/stores.css */
}
@media screen and (max-width: 959px) {

    /* SP/タブレットヘッダー */
    header {
        padding: 0;
        display: flex;
        width: 100%;
        position: fixed;
        height: 14.2vw;
        max-height: 80px;
        z-index: 20000;
        top: 0;
        left: 0;
    }
    .headerWrap {
        display: none;
    }
    .headerSPwrap {
        height: 100%;
        margin: 0;
        padding: 0;
        overflow: hidden;
    }
    .headerSPbar {
        display: flex;
        align-items: center;
        justify-content: space-between;
        background-color: #fff;
        height: 14.2vw;
        max-height: 80px;
        width: 100%;
        position: fixed;
        top: 0;
        right: 0;
        box-shadow: 0 0 10px #0000001f;
    }
    .headerSPbar .headerLogo {
        margin-left: 0;
        display: flex;
        align-items: center;
        height: 100%;
        margin-left: 11vw;
    }
    .headerSPbar .headerLogo img {
        display: block;
        width: 30vw;
    }
    .headerSPbar .headerNavOpenButton {
        width: 14vw;
        display: flex;
        justify-content: center;
        align-items: center;
    }
    .headerSPbar .headerNavOpenButton img {
        width: 5.33vw;
        height: auto;
    }
    .headerSP {
        display: flex;
        justify-content: flex-end;
        align-items: stretch;
        background-color: rgba(0, 0, 0, 0.75);
        height: 155vh;
        width: 100%;
        padding: 0;
        position: fixed;
        top: 0;
        left: 0;
        z-index: 2000;
        overflow: hidden;
    }
    .headerSP nav.headerNav {
        height: 100vh;
        width: 75%;
        background-color: #000;
        display: flex;
        flex-direction: column;
        justify-content: flex-start;
        margin-right: 0;
        margin-left: auto;
        min-width: auto;
        padding-left: 3em;
        padding-top: 60px;
        padding-bottom: 200px;
        position: fixed;
        z-index: 1000;
        left: 0;
    }
    .headerSP nav.headerNav .headerNavCloseButton {
        height: 13.33vw;
        width: 13.33vw;
        display: flex;
        align-items: center;
        justify-content: center;
        text-align: right;
        position: fixed;
        top: 0;
        left: 0;
    }
    .headerSP nav.headerNav .headerNavCloseButton img {
        width: 5.33vw;
        height: auto;
    }
    .headerSP nav.headerNav ul {
        flex-direction: column;
        align-items: flex-start;
        margin-bottom: 16px;
        margin-top: 20px;
    }
    .headerSP nav.headerNav ul li {
        font-size: 4vw;
        line-height: 10vw;
    }
    .headerSP nav.headerNav ul li::after {
        border: 0;
    }
    .headerSP nav.headerNav ul li,
    .headerSP nav.headerNav ul li a {
        color: #ccc;
    }
    .headerSP nav.headerNav ul li:hover::before,
    .headerSP nav.headerNav ul li a:hover::before {
        border-bottom: 0;
    }
    .headerSP nav.headerNav ul li ul li.col2 {
        width: 66%;
    }
    .headerSP nav.headerNav ul li ul li.col3 {
        width: 100%;
    }
    .headerSP nav.headerNav ul li ul::after {
        content: "";
        display: block;
        clear: both;
    }
    .headerNav ul li::after {
        content: none;
    }
    .headerSP nav.headerNav ul li.spMenuCompany span{
        font-size: 3.3vw;
        color: #a2a2a2;
        margin-top: 5px;
        display: inline-block;
    }
    .headerSP nav.headerNav ul li.spMenuCompany ul {
        margin-top: 0;
        margin-bottom: 30px;
        padding: 0;
        list-style: none;
        display: block;
        position: relative;
    }
    .headerSP nav.headerNav ul li.spMenuCompany ul > li {
        padding: 0;
        margin: 0;
        position: relative;
        background: #000;
    }
    .headerSP nav.headerNav ul li.spMenuCompany ul > li:last-child {
        border-bottom: none;
    }
    .headerSP nav.headerNav ul li.spMenuCompany ul > li > a {
        display: block;
        padding-left: 20px;
        position: relative;
    }
    .headerSP nav.headerNav ul li.spMenuCompany ul > li > a::before {
        content: "";
        position: absolute;
        left: 8px;
        top: 50%;
        transform: translateY(-50%);
        width: 3px;
        height: 3px;
        background-color: #666;
        border-radius: 50%;
        transition: background-color 0.3s ease;
    }


    /* お知らせ */
    .importantNotices {
        margin: 0 30px;
    }
    .headerImg {
        width: 1180px;
    }
    .ff-22 {
        font-size: 22px !important;
    }

    .lh-26 {
        line-height: 26px !important;
    }
    /*  運営会社ページ  */
    .o_com {
        margin: 0 100px;
    }
    /* .p-note（959px）→ css/plan.css */
    /* SP 店舗一覧ボタン */
    .headerIcons {
        display: flex;
        align-items: center;
        height: 100%;
        margin-right: 1vw;
    }
    .headerIcons_c {
        width: 11.6vw;
        height: 11.6vw;
        display: flex;
        justify-content: center;
        align-items: center;
        padding: 0 1vw 0;
        margin: 2px 0 -1px;
    }
    .headerIcons .headerIcons_c:first-of-type a img{
        width: 7.3vw;
        height: 8vw;
        filter: brightness(0.3);
        max-width: 43px;
        max-height: 53px;
    }
    .headerIcons .headerIcons_c:last-of-type a img{
        width: 8vw;
        height: 8vw;
        filter: brightness(0.3);
        max-width: 46px;
        max-height: 53px;
    }
    .headerIconWrap{
        line-height: 0;
        background: #F1D761;
        padding: 3px;
        border-radius: 3px;
        border-bottom: solid 1px #8e8e8e;
        border-right: solid 1px #8e8e8e;
        box-shadow: 1px 1px 1px #a0a0a0;
        width: 9.5vw;
        height: 9.5vw;
        max-width: 60px;
        max-height: 60px;
    }
    .headerIcons .headerIcons_c:last-of-type .headerIconWrap{
        background: #BDB5AE;
    }
    a.iconLink {
        display: flex;
        flex: none;
        flex-direction: column;
        flex-wrap: nowrap;
        gap: 3px;
        text-align: center;
        align-items: center;
    }
    a.iconLink > p {
        font-size: clamp(8px, 2.2vw, 14px);
        font-weight: 600;
        color: #333;
        text-align: center;
        margin-top: -3px;
    }
    .headerNav .yellowButton.AppButton{
        margin: 0;
        font-size: 4vw;
        width: 50%;
        height: 11vw;
    }
    .headerNav .yellowButton.AppButton svg{
        width: 2.3vw;
        height: 3.6vw;
    }
}

/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
/*■■■■以下、スマホ 対応 ■■■■■■■■■*/
/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
@media screen and (max-width: 767px) {
    .pc_none {
        display: block !important;
    }
    .sp_none, .storeNewsListTitle.sp_none {
        display: none !important;
    }
    .sp_only{
        display: block;
    }
    br.sp-only {
        display: block;
    }
    body {
        font-size: 10.6vw;
    }
    img {
        max-width: 100%;
        height: auto;
    }
    iframe {
        width: 100%;
    }
    header,
    main,
    .mainContents,
    .mainWrap {
        max-width: 767px;
        width: calc(100vw - 10.66vw);
        min-width: 100%;
        margin: 0 0;
    }
    .coworking .mainContents, .coworking .storeMap{
        width: 100%;
    }
    .yellowButton {
        height: 13.33vw;
        width: auto;
        font-size: 2.4vw;
        margin: 6.66vw auto;
        padding: 0;
    }
    .yellowButton a {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 100%;
        height: 13.33vw;
    }
    .yellowButton svg {
        top: 4vw;
        right: 4vw;
        width: 1.06vw;
        height: 1.86vw;
        margin-left: 1em;
    }
    .mainMatome .yellowButton {
        width: 48vw;
    }
    .mainMatome .yellowButton svg {
        top: 4vw;
        right: 4vw;
        width: 1.06vw;
        height: 1.86vw;
        margin-left: 0;
    }
    .yellowButton img {
        top: 4vw;
        right: 4vw;
        width: 1.06vw;
        height: 1.86vw;
        margin-left: 3em;
    }
    .yellowButton.reserveRoomButton {
        height: 13.33vw;
        width: 43.33vw;
        font-size: 3.2vw;
        font-weight: bold;
    }
    .yellowButton.reserveRoomButton svg {
        width: 2.2vw;
        height: 4vw;
    }
    h2:not(.matomeCatch):not(.matomeTopCatch h2):not(.normalHeadline):not(.matomeTokusyu h2):not(.tokusyu_store_name):not(.blogArticle h2):not(.indexWrap h2):not(.mainContentsCoworking h2):not(.mainContentsPrice01 h2):not(.o_com h2)::before {
        border-width: 20px 20px 0 0;
    }
    .RoomDetail {
        display: contents;
    }
    .mainContentsBoxSeparate {
        min-width: 100%;
        flex-direction: column;
        width: calc(100vw - 10.66vw);
        margin-bottom: 6vw;
    }
    .mainContentsBoxSeparate .leftBox {
        width: calc(100vw - 10.66vw);
        padding-left: 0;
    }
    .mainContentsBoxSeparate .rightBox {
        width: calc(100vw - 10.66vw);
        margin-right: 0;
        margin-bottom: 8vw;
    }
    /* SPのみ改行するときの<br>に */
    .spbr {
        display: block;
    }
    /* SPのみセンタリングするときの要素に */
    .spCenter {
        text-align: center;
    }
    /* SPメインコンテンツ */
    main {
        font-size: 3.2vw;
        min-width: auto;
        width: 100%;
        padding-left: 0;
        padding-right: 0;
        margin-top: 3rem;
    }
    main::after {
        border-width: 62vw 62vw 62vw 0;
        border-color: transparent #f2de86 transparent transparent;
        z-index: -1;
    }
    .mainWrap {
        padding-left: 3vw;
        padding-right: 3vw;
        padding-top: 3vw;
        line-height: 2em;
    }
    .mainWrap.coworking {
        padding-top: 3vw;
    }
    .mainWrap::before {
        left: -4vw;
        border-width: 60vw 60vw 0 0;
        z-index: -1;
    }
    .mainWrap h1 {
        font-size: 6.6vw;
        text-align: left;
        line-height: 100%;
        padding: 1rem 0 0.5rem;
    }
    .mainWrap h1 span {
        max-width: 767px;
        width: calc(100vw - 10.66vw);
    }
    .mainWrap div span.headlineJa {
        font-size: 4vw;
        margin-bottom: 2vw;
    }
    .mainWrap div span.headlineEn {
        font-size: 30px;
        padding-top: 0;
    }
    .mainWrap div span.headlineMatome {
        font-size: 30px;
        padding-top: 0;
    }
    .mainWrap div.CustomPostHead::after {
        bottom: 1.4vw;
        width: 767px;
    }
    h1.matome-archive {
        padding-bottom: 1rem;
    }
    .mainWrap h1::after {
        bottom: -1vw;
    }
    .mainContents {
        line-height: 7vw;
        padding-top: 1rem;
        padding-bottom: 3.2vw;
    }
    .mainContentsBox {
        font-size: 3.5vw;
        padding-bottom: 6.8vw;
    }
    .mainContentsBox h3 {
        font-size: 4vw;
        padding-bottom: 0;
        margin-bottom: 3vw;
        line-height: 6vw;
    }
    .coworking .faq h3{
        font-size: 4vw;
    }
    .mainContentsBox.terms {
        padding-bottom: 0;
    }
    h2 {
        font-size: 4.8vw;
        padding-top: 6vw;
        line-height: 120%;
    }
    h2::before {
        border-width: 6.66vw 6.66vw 0 0;
    }
    .mainMatome.matomeTop h2 {
        font-size: 4.8vw;
        padding-top: 12vw;
        line-height: 1.8;
        padding: 20px 5% 10px !important;
    }
    .mainMatome.matomeTop .mainContentsFacilityIntro h2 {
        padding: 20px 3% 10px !important;
    }
    .matomeTop .matomeMokuji h2 {
        margin: 0;
        padding: 20px 0 10px !important;
    }
    .matomeTop .matomeMokuji ol {
        padding: 0 3%;
    }
    .matomeTop .matomeMokuji ol li {
        padding: 10px 0;
    }
    .matomeTop .yellowButton+.yellowButton {
        margin-top: 10px;
    }
    .mainMatome .bn_wrap {
        margin: 0 0 50px;
        display: block;
    }
    .mainMatome .bn_wrap_bt .bn_area {
        margin: 0;
    }
    .mainMatome .bn_area {
        margin-top: 30px;
    }
    .matomeTop .centerCatchCopy p {
        font-size: 3.2vw;
        line-height: 2.4em;
        padding: 0 5% !important;
        margin-top: 4vw;
    }
    .matomeOsakaTop dl {
        font-size: 3.2vw;
    }
    .mainMatome blockquote {
        padding: 2rem 1rem 1rem 1rem;
    }
    .mainMatome.matomeTop h2 p {
        margin-bottom: 10px;
    }
    .mainMatome.matomeTop h2 p:last-of-type {
        margin-bottom: 20px;
    }
    .mainMatome.matomeTop h2::before {
        border-width: 6.66vw 6.66vw 0 0;
    }
    /* .otherArea（767px）→ css/taxonomy.css */
    .postBn {
        width: 100%;
    }
    h2.normalHeadline {
        font-size: 4vw;
        line-height: 2em;
        margin-bottom: 0.6em;
        margin-left: 0;
        padding-left: 0;
    }
    .headerImg {
        width: 100vw;
        min-width: 100vw;
        height: 40vw;
        margin-top: 13.33vw;
        margin-left: 0;
        left: 0;
    }
    .headerImg+.mainWrap {
        padding-top: 2rem;
        z-index: 1;
    }
    .centerCatchCopy {
        font-size: 4.8vw;
        padding-bottom: 0px !important;
        text-align: left;
    }
    .matomeTop .centerCatchCopy {
        padding-bottom: 40px !important;
    }
    .matomeTop .centerCatchCopy .motto {
        margin: 20px 3% 0;
        padding: 10px 3%;
        line-height: 1.2;
    }
    .matomeTop .centerCatchCopy .motto p {
        line-height: 2;
        font-size: 3.2vw;
        padding: 0 !important;
    }
    .matomeTop .centerCatchCopy .motto a {
        font-size: 3.2vw;
    }
    .lum-lightbox-inner img {
        max-width: 100% !important;
    }
    .yellowArrowLink span::after {
        left: 100px;
        width: 135px;
    }
    .yellowArrowLink span::before {
        left: 231px;
    }
    /* .PlanCol（767px 後半）→ css/top.css */
    .PlanType {
        margin-top: 15px;
        margin-left: 0;
    }
    .detail_plan .PlanType {
        margin-bottom: 20px;
    }
    .storeListFacilities .storeListFacility {
        font-size: 3vw;
    }
    /* お知らせ */
    .importantNotices {
        padding: 10px;
        text-align: left;
        margin: 0 0 35px 0;
    }
    .importantNotices .information {
        margin-bottom: 7px;
    }
    .importantNotices .infoText {
        line-height: 5vw;
        margin-bottom: 10px;
    }
    /* 店舗・コワーキング／会議室／月額・地図等の SP → css/stores.css */
    /* まとめトップ背景・画像プレビュー → css/taxonomy.css */
    /* 月額プランページ（.mainContentsMonthlyPlan 等）SP → css/plan.css */
    .centerCatchCopy p {
        font-size: 3.2vw;
        line-height: 2em;
        padding: 0;
        margin-top: 4vw;
        text-align: left;
    }
    .mainContentsBlog .leftBox {
        flex-wrap: wrap;
    }
    .mainContentsBlog .leftBox h2 {
        font-size: 4.8vw;
    }
    .mainContentsBlog .yellowArrowLink::after {
        width: 130px;
    }
    /* FAWページ */
    .qaLists {
        padding: 1vw 3vw;
    }
    .qaLists .accordionList {
        padding: 2vw 0;
    }
    .qaLists .accordionList .qaItemChild {
        font-size: 3.2vw;
        padding: 3vw 0 4vw;
    }
    .qaLists .accordionList .qaItem {
        font-size: 3.2vw;
        padding-right: 6vw;
        padding-top: 0;
    }
    .qaLists .accordionList .qaItem::after {
        right: 1vw;
    }
    /* CF7 / 予約フォーム SP → css/wpcf7-theme.css */

    /* BLOG ブログ（SP）— .blogThumbnails の SP レイアウト。PC/タブレットのベースは本ファイル上部 */
    .mainContentsBlog,
    .mainContentsMatome {
        flex-direction: column;
    }
    .blogThumbnails,
    .matomeThumbnails {
        flex-direction: column;
    }
    .blogThumbnails .blogThumbnailBox,
    .matomeThumbnails .matomeThumbnailBox {
        width: 100%;
        margin-right: 0;
        padding-bottom: 2vw;
        margin-bottom: 5.33vw;
        border-bottom: 1px solid #e1e1e1;
    }
    .mainContentsBlog .blogThumbnails .blogThumbnailBox .blogThumbnailmage,
    .coworking .mainContentsBlog .blogThumbnails .blogThumbnailBox .blogThumbnailmage {
        width: 32vw;
        height: 24.66vw;
        float: left;
        margin: 2.66vw;
    }
    .blogThumbnailmage {
        width: 100%;
    }
    .matomeThumbnailmage {
        width: 100%;
        height: 20vh;
    }
    .matomeThumbnailDetail p {
        line-height: 1;
        font-size: 3.6vw;
    }
    .blogThumbnailText,
    .matomeThumbnailText {
        letter-spacing: 0.04em;
        padding: 2.66vw;
    }
    .blogThumbnailText .blogThumbnailDate {
        font-size: 3.2vw;
        margin-top: 1em;
        font-weight: bold;
    }
    .blogThumbnailText .blogThumbnailTitle,
    .matomeThumbnailText .matomeThumbnailTitle {
        font-size: 3.2vw;
        line-height: 4.79vw;
        margin-top: 0.5em;
        margin-bottom: 2em;
    }
    .blogThumbnailText .blogThumbnailDetail,
    .matomeThumbnailText .matomeThumbnailDetail {
        font-size: 3.2vw;
        line-height: 5.33vw;
        margin-bottom: 2vw;
        clear: both;
    }
    .matomeThumbnailText .matomeThumbnailDetail {
        margin: 2vw;
    }
    .tagHeadline {
        margin-bottom: 6.66vw;
        font-size: 5vw;
    }
    .tokusyuTitle {
        position: relative;
        background: #fff;
        padding: 20px 15px;
        text-align: left;
        border-radius: 20px;
        border: #555555 solid 3px;
        text-align: center;
        margin-top: 2rem;
        margin-bottom: 40px;
        width: 100%;
    }
    .tokusyuTitle::before {
        content: "";
        position: absolute;
        bottom: -24px;
        left: 50%;
        margin-top: 2rem;
        margin-left: -15px;
        border: 12px solid transparent;
        border-top: 12px solid #FFF;
        z-index: 2;
    }
    .tokusyuTitle::after {
        content: "";
        position: absolute;
        bottom: -30px;
        left: 50%;
        margin-left: -17px;
        border: 14px solid transparent;
        border-top: 14px solid #555;
        z-index: 1;
    }
    .cat_desc {
        width: 100%;
        text-align: left;
        margin-top: 0;
    }
    .cat_desc p {
        font-weight: normal;
        margin: 0 0 0;
        font-size: 4vw;
    }
    /*  404ページ  */
    .error-404 .error-title {
        font-size: 40px;
        line-height: 50px;
    }
    .error-404 .page-title {
        font-size: 20px;
        margin-top: 10px;
    }
    .slick-dots {
        bottom: -8vw;
    }


    h1.japaneseHeadline {
        margin-bottom: 2vw;
        margin-top: 6vw;
        padding-bottom: 2vw;
    }
    h1.japaneseHeadline::after {
        bottom: 1.2vw;
    }
    h1.japaneseHeadline span.headlineJaBig {
        font-size: 4.8vw;
        line-height: 1.4em;
        letter-spacing: 0.02em;
        margin-top: 0;
    }
    /* .wpcf7 .topNote_price → css/wpcf7-theme.css */
    /* FACILITY 設備情報SP */
    .mainContentsFacility {
        margin-top: 10vw;
    }
    .mainContentsFacilityIntro {
        margin-bottom: 7vw;
    }
    .mainContentsFacilityIntro .facilityIntroTop {
        padding: 10.66vw 3.2vw;
        height: 120vw;
        background-image: url(img/facilityIntroTopImg.jpg);
        background-size: cover;
        display: flex;
        justify-content: space-between;
        align-items: center;
    }
    .mainContentsFacilityIntro .facilityIntroTopCatch {
        font-size: 4.8vw;
        margin-bottom: 2em;
        font-weight: 400;
    }
    .mainContentsFacilityIntro .facilityIntroTopIcons {
        padding: 0;
    }
    .mainContentsFacilityIntro .facilityIntroTopIcons ul {
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        padding-bottom: auto;
    }
    .mainContentsFacilityIntro .facilityIntroTopIcons ul li {
        flex-basis: 50%;
        font-size: 3.2vw;
        margin-bottom: 7vw;
    }
    .mainContentsFacilityIntro .facilityIntroTopIcons ul li span {
        font-size: 2.66vw;
    }
    .mainContentsFacilityIntro .facilityIntroTopIcons ul li img {
        width: 14.66vw;
        height: auto;
    }
    .mainContentsFacilityIntro .facilityIntroTopIcons ul li .facilityCaption {
        margin-top: 1.2em;
        margin-bottom: 0;
        height: auto;
    }
    .mainContentsFacilityIntro .facilityIntroBottom {
        height: 57.73vw;
        padding-bottom: auto;
        display: flex;
        align-items: center;
        justify-content: center;
    }
    .mainContentsFacilityIntro .facilityIntroBottom .facilityIntroBottomIcons {
        margin: auto 5vw;
    }
    .mainContentsFacilityIntro .facilityIntroBottom .facilityIntroBottomIcons ul {
        align-items: center;
        justify-content: space-around;
        margin-top: 5vw;
    }
    .mainContentsFacilityIntro .facilityIntroBottom .facilityIntroBottomIcons ul li {
        flex-basis: 33%;
    }
    .mainContentsFacilityIntro .facilityIntroBottom .facilityIntroBottomIcons ul li .storeFacilityIcon {
        margin: 0.2vw;
    }
    .mainContentsFacilityIntro .facilityIntroBottom .facilityIntroBottomIcons ul li .facilityCaption {
        font-size: 2.66vw;
        margin-top: 0;
        margin-bottom: 1em;
        height: auto;
    }
    .mainContentsFacilityIntro .facilityIntroBottom .facilityIntroBottomIcons ul li img {
        width: 10.66vw;
        height: auto;
    }
    .facilityLists {
        margin-top: 0;
    }
    .facilityLists .facilityList {
        margin-bottom: 16vw;
    }
    .facilityLists .facilityList:last-child {
        margin-bottom: 0;
    }
    .facilityLists .facilityListsHead {
        font-size: 4vw;
        padding: 2vw;
        border-top: 2px solid #000;
    }
    .facilityLists .facilityListsHead img {
        margin-right: 0.4em;
    }
    .facilityLists .facilityListsHead.facilityListsHeadFree img {
        width: 8vw;
        height: 4vw;
    }
    .facilityLists .facilityListsHead.facilityListsHeadCharging img {
        width: 6.4vw;
        height: 6.4vw;
    }
    .facilityLists ol li {
        align-items: flex-start;
        width: 100%;
        font-size: 3.2vw;
        padding: 1.8vw 0;
        line-height: 1.6em;
    }
    .facilityLists ol li .facilityListName {
        min-width: auto;
        margin-left: 2em;
        flex-basis: 42%;
        padding-right: 1em;
    }
    .facilityLists ol li .facilityListComment {
        flex-basis: 58%;
        font-size: 3.2vw;
    }
    .facilityLists ol li::before {
        font-size: 3.2vw;
    }
    /* TERMS Webサイト利用規約SP */
    .mainContentsBox .mainContentsBoxText ol li .mainContentsBoxTextListNest {
        margin-top: 1.5em;
        margin-bottom: 6vw;
        margin-left: 2em;
    }
    /* PRIVACY プライバシーポリシーSP */
    .mainContentsBox .mainContentsBoxText ol li {
        padding: 0.5vw;
    }
    .mainContentsBox .mainContentsBoxText p~ol {
        margin-top: 0.5vw;
        margin-bottom: 4vw;
    }
    .mainContentsBox .mainContentsBoxText p {
        margin-bottom: 4.66vw;
    }
    .mainContents.price {
        width: auto;
        max-width: none;
        margin-right: -5.33vw;
        margin-left: -5.33vw;
        padding: 10vw 5.33vw;
    }
    /* 料金ページ内 CF7 form → css/wpcf7-theme.css */
    /* シェアボタン */
    .articleShareButton {
        margin-bottom: 24vw;
        padding-bottom: 14vw;
    }
    .articleShareButton img {
        width: 9.6vw;
        height: auto;
    }
    /* ↓パンくずリスト */
    .breadCrumb {
        font-size: 3vw;
        margin-top: 0;
        line-height: 2em;
    }
    /* SPフッター */
    footer {
        flex-direction: column;
        min-width: auto;
        padding: 10vw 8vw;
    }
    footer::after {
        left: 0;
        border-width: 83.3vw 83.3vw 0 83.3vw;
    }
    .footerLeft {
        width: 100%;
        justify-content: space-between;
        padding: 0 0 5vw 0;
        border-bottom: 1px solid #ccc;
    }
    .footerLeft .footerLogo {
        order: -1;
        margin-bottom: 5vw;
    }
    .footerLeft .footerLogo .footerLogoImage img {
        width: 46.8vw;
        height: auto;
    }
    .footerLeft .footerLogo .footerLogoSNS img {
        width: 9.6vw;
        height: auto;
    }
    .footerLeft .footerLogo .footerLogoImage{
        margin-bottom: 0;
    }
    .footerNav {
        width: 100%;
        min-width: auto;
        position: relative;
        padding-top: 7vw;
    }
    .footerNav .footerNavMenu {
        display: flex;
        flex-direction: column;
    }
    .footerNav .footerNavMenu ul.footerNavMenuContents {
        flex-direction: column;
        margin-top: 0;
        font-size: 3.52vw;
    }
    .footerNav .footerNavMenu ul.footerNavMenuContents li {
        margin-bottom: 3vw;
    }
    .footerNav .footerNavMenu ul.footerNavMenuAboutus {
        flex-direction: column;
        justify-content: flex-start;
    }
    .footerNav .footerNavMenu ul.footerNavMenuAboutus li {
        font-size: 3.5vw;
        margin-left: 0;
        margin-bottom: 3vw;
    }
    .footerNav .footerCopyright {
        font-size: 3.2vw;
        text-align: left;
    }
    /* スマホ版で会議室予約ページのみ非表示 */
    .rs-trigger-btn.rs-hide-on-mobile {
        display: none !important;
    }
    
    .rs-trigger-btn {
        bottom: 70px;
        right: 15px;
        padding: 12px 24px;
        font-size: 16px;
    }
    .fixed-btn {
        right: -112px;
        bottom: calc(30% - 10px);
    }
    .fixed-btn .rs-modal-content {
        margin: 90px auto;
    }
    .fixed-btn .rs-trigger-btn {
        padding: 14px 13px;
    }
    .fixed-btn h3.rserve-popup {
        font-size: 0.43em;
    }
    .fixed-btn .rs-room-title,
    .fixed-btn .rs-campaign-text,
    .fixed-btn .rs-normal-label {
        font-size: 0.4em;
    }
    .rs-page-container h3.reserve-popup{
        font-size: 15px;
    }
    button.page-top {
        width: 48px;
        height: 70px;
        bottom: calc(18% - 10px);
    }
    button.page-top i {
        font-size: 17px;
    }
    button.page-top p {
        font-size: 13px;
        bottom: 17px;
    }
    /* ===================================================================
    運営会社ページ スマホ
    =================================================================== */
    .o_com {
        margin: 0 4vw;
    }
    .o_com h2 {
        line-height: 1.5;
    }
    .o_com .table1 th {
        width: 100%;
    }
    .o_com .table1 tr {
        flex-wrap: wrap;
        padding: 10px 0;
    }
    .o_com .serviceInWrap {
        width: 100%;
    }
    /* ===================================================================
    会議室予約ページ スマホ
    =================================================================== */
    #mtgReserve .scrollStore.storeListStr ul li {
        line-height: 1.8;
    }
    #mtgReserve h4 {
        font-size: 15px;
    }
    .reserveCards h4:not(:first-child) {
        margin-top: 0;
    }
    .cwInwrap .detail_plan{
        width: calc(100vw - 10.66vw);
    }
    .cwInwrap .tab-content .detail_plan{
        width: 100%;
        margin-bottom: 10px;
    }
    .p-plan-table {
        display: inline-table;
    } 
    .p-plan-table:not(.table2lines) {
        width: 80%;
    }
    .coworking .p-plan-table{
        font-size: 3.2vw;
        width: 100% !important;
    }
    .coworking .p-plan-table td,.coworking .p-plan-table th{
        padding: 10px;
    }
    .coworking .pricetable .p-scrollable table th{
        width: auto;
    }
    .monthly_tab .p-plan-table {
        width: auto;
    }
    .pricetable {
        margin-bottom: 10px;
    }
    .detail_plan .yellowButton {
        width: 260px;
        font-size: 12px;
    }
    .detail_plan .p-plan-table .yellowButton.reservation {
        width: auto;
        font-size: 3.2vw;
        padding: 5px 0 3px !important;
        font-weight: bold;
    }
    .detail_plan h3 {
        font-size: 3.5vw;
    }
    .pricetable .table2lines td {
        height: 30px;
    }
    .pricetable td, .pricetable th {
        padding: 5px;
    }
    .detail_plan .pricetable .table2lines td .cam_label{
        font-size: 2.5vw;
    }
    .detail_plan .col2-wrap {
        flex-direction: column;
    }
    .detail_plan .col2-wrap div {
        width: 100%;
    }
    .detail_plan .col2-wrap p {
        padding-right: 0;
    }
    .detail_plan .col2-wrap .pricetable .p-scrollable table {
        table-layout: auto;
    }

    .text-center {
        text-align: center !important;
    }
    .text-left {
        text-align: left !important;
    }
    .text-right {
        text-align: right !important;
    }
    .bold_line {
        border-bottom: solid 3px #e4dfdc !important;
    }
    .ff-inherit {
        font-family: inherit !important;
    }
    .no-border-right {
        border-right: none !important;
    }
    .block-center {
        margin-left: auto !important;
        margin-right: auto !important;
    }
    .sp-fs-12 {
        font-size: 12px !important;
        line-height: 1 !important;
    }
    .mb-ex {
        margin-bottom: 3px !important;
    }
    .sp-mini {
        width: 40px;
    }
    .accordion-title::after {
            right: -15px;
            top: 3px;
            width: 1.5vw;
            height: 1.5vw;
    }
    .mainWrap h1 span.headlineJa {
        font-size: 4vw;
        margin-bottom: 2vw;
    }
    .mainWrap h1 span.headlineEn {
        font-size: 30px;
        padding-top: 0;
    }
    .bn_wrap.bn_wrap_bt {
        display: block;
    }
    /* キャンペーンバナー */
    .campaignBannerFixed {
        left: 50%;
        bottom: 20px;
        transform: translateX(-50%);
        max-width: 90%;
        width: 320px;
    }
    .campaignBannerFixed.isVisible {
        transform: translateX(-50%);
    }
    .campaignBannerImagePc {
        display: none;
    }
    #rs-store-list {
        grid-template-columns: 1fr 1fr;
    }
    .rs-flow-box {
        padding: 15px;
    }
}
