/*

■このCSSの役割＝CSS基本ファイル
①/css/main.css（サイト全体使用基本css）

*/


@charset 'UTF-8';


/*------------------------------------------------------------
    font
------------------------------------------------------------*/

.font-noto{
    font-family: "Noto Sans JP", sans-serif;
    font-style: normal;
    font-optical-sizing: auto;
}

.font-roboto{
    font-family: "Roboto", sans-serif;
    font-style: normal;
    font-optical-sizing: auto;
}

.font-zen-light {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 300;
  font-style: normal;
}

.font-zen-regular {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 400;
  font-style: normal;
}

.font-zen-medium {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-style: normal;
}

.font-zen-bold {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 700;
  font-style: normal;
}

.font-zen-black {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 900;
  font-style: normal;
}


/*------------------------------------------------------------
    animation
------------------------------------------------------------*/

@-webkit-keyframes fadeIn {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

@keyframes fadeIn {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

.fadeIn {
  -webkit-animation-name: fadeIn;
  animation-name: fadeIn;
}

.animated.delay-1s {
  -webkit-animation-delay: 1s;
  animation-delay: 1s;
}


.animated {
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}



/*------------------------------------------------------------
    Base Fix
------------------------------------------------------------*/

div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, 
p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, 
dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, 
tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, 
legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, 
canvas, details, embed, figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary, time, mark, audio, video,
input, select, textarea {
    margin: 0;
    padding: 0;
    border: 0;
}

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
    display: block;
}

body{
    min-width: 1240px;
}

main{
    overflow: hidden;
}
main > .basic-page > #sections{
    font-family: "Noto Sans JP", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
    font-size: 16px;
    line-height: 1.89;
    word-break: break-word;
    color: #101010;
}
.basic-page a{
    transition: all .3s;
    word-break: break-all;
    color: #089FCE;
}
.basic-page a:hover{
    transition: all .3s;
}
.holdings-footer.page-in-menu {
    padding-bottom: 75px;
}
.holdings-header a, .holdings-titlenav a, .holdings-footer a, .holdings-cta a {
    word-break: break-word;
    white-space: normal;
}
.holdings-titlenav {
    position: relative;
    z-index: 9;
}
.titlenavigation {
    position: relative;
    z-index: 9;
}
.bgWhite{
    background: #fff;
}
.holdings-breadcrumbs__list__item a{
    word-break: break-word;
    white-space: normal;
}
img{
    max-width: 100%;
    height: auto;
}



@media only screen and (max-width:640px) and (max-device-width:1280px){

    body{
        min-width: auto;
    }
    .basic-page {
        width: 100%;
    }
    main > .basic-page > #sections{
        font-size: 14px;
    }
    .holdings-footer.page-in-menu {
        padding-bottom: 0;
    }


}


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

.holdings-header__subchild {
    background-color: #F2F2F2;
    color: #666;
    text-align: center;
    font-size: 12px;
    position: relative;
}


@media only screen and (max-width:640px) and (max-device-width:1280px){



}



/*------------------------------------------------------------
    common Parts
------------------------------------------------------------*/

.unicom-pc{
    display: block;
}
.unicom-sp{
    display: none;
}

.unicom-inner{
    max-width: 1060px;
    margin: 0 auto;
    padding: 0 40px;
}
.unicom-inner-md{
    max-width: 1190px;
    margin: 0 auto;
    padding: 0 40px;
}
.unicom-inner-lg{
    max-width: 1320px;
    margin: 0 auto;
    padding: 0 40px;
}
.unicom-inner-max{
    max-width: 1470px;
    margin: 0 auto;
}


/* sectionパーツ */

article#top-article{

}
article#top-article > section{
    padding-top: 120px;
}

.section-head{
    margin-bottom: 48px;
}
.section-title {
    font-size: 36px;
    line-height: 1.5;
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 700;
    position: relative;
}
.section-title:before{
    content: "";
    display: block;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background: #101010;
    position: absolute;
    top: 21px;
    left: -44px;
}
.section-description{
    margin-top: 32px;
}




@media only screen and (max-width:640px) and (max-device-width:1280px){

    .unicom-pc{
        display: none !important;
    }
    .unicom-sp{
        display: block;
    }
    .unicom-inner{
        width: 100%;
        padding: 0 15px;
        box-sizing: border-box;
    }
    .unicom-inner-md{
        width: 100%;
        padding: 0 15px;
        box-sizing: border-box;
    }
    .unicom-inner-lg{
        width: 100%;
        padding: 0 15px;
        box-sizing: border-box;
    }

    .section-title {
        font-size: 28px;
        padding-left: 32px;
    }
    .section-title:before {
        width: 16px;
        height: 16px;
        top: 15px;
        left: 0;
    }
    .section-head{
        margin-bottom: 40px;
    }

    article#top-article > section{
        padding-top: 80px;
    }



}

@media only screen and (max-width:374px){

    

}




/*------------------------------------------------------------
    btn Parts
------------------------------------------------------------*/

/* .main-btn */
.main-btn{
    margin-top: 40px;
}
.main-btn a{
    position: relative;
    height: 56px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    color: #fff;
    background: #101010;
    border-radius: 56px;
    width: 256px;
    box-sizing: border-box;
    border: 1px solid;
}
.main-btn a:hover{
    background: #fff;
    color: #101010;
}
.main-conversion-btn-text{
    position: relative;
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 700;
    font-size: 17px;
}
.btn-decorate{
    position: absolute;
    top: 50%;
    right: 4px;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    width: 48px;
    height: 48px;
    border-radius: 50%;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    background: #fff;
    transition: all .3s;
}
.btn-decorate .material-symbols-outlined{
    font-weight: 700;
    font-size: 26px;
}
.btn-decorate.no-decorate{
    background: none;
}


/* .text-btn */
.text-btn{
    margin-top: 16px;
    text-align: center;
}
.text-btn a{
    color: #fff;
    text-decoration: underline;
    font-weight: 500;
}
.text-btn a:hover{
    text-decoration: none;
    opacity: 0.6;
}


/* .main-conversion */
.main-conversion{
    width: 360px;
    height: 360px;
    border-radius: 50%;
    background: #945126;
    background: linear-gradient(135deg,rgba(148, 81, 38, 1) 0%, rgba(188, 95, 34, 1) 100%);
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    box-shadow: rgba(9, 35, 64, 0.1) 4px 6px 16px 4px;
}
.main-conversion-box {
    margin-top: 18px;
}
.main-conversion-name{
    text-align: center;
    height: 96px;
    margin-bottom: 28px;
}
.main-conversion-name-text{
    line-height: 1.5;
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 700;
    font-size: 32px;
    color: #fff;
}
.main-conversion-btn .main-btn{
    margin-top: 0;
} 
.main-conversion-btn .main-btn a{
    width: 272px;
    background: #fff;
    color: rgba(148, 81, 38, 1);
    border: 1px solid #fff;
}
.main-conversion-btn .main-btn a:hover{
    background: none;
    color: #fff;
}

@media only screen and (max-width:640px) and (max-device-width:1280px){

    .main-conversion{
        width: 320px;
        height: 320px;
        margin: auto;
    }
    .main-conversion-box {
        margin-top: 12px;
    }
    .main-conversion-name {
        text-align: center;
        height: 80px;
        margin-bottom: 28px;
    }
    .main-conversion-name-text{
        font-size: 28px;
    }

    .btn-decorate{
        width: 40px;
        height: 40px;
    }
    .btn-decorate .material-symbols-outlined{
        font-size: 22px;
    }

    .main-btn a{
        width: 100%;
    }
    .main-conversion-btn-text{
        font-size: 16px;
    }
    .text-btn{
        margin-top: 20px;
    }

}



/*------------------------------------------------------------
    #top-visual｜TOP Page Parts
------------------------------------------------------------*/

#top-visual{
    position: relative;
}
#top-visual-copy {
    padding: 40px 0 48px;
}
.top-visual-copy-text {
    font-size: 52px;
    line-height: 1.4;
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 700;
}
#top-visual-copy .unicom-inner-md{
    position: relative;
}

.slide-item {
    height: 680px;
    border-radius: 32px;
}
#top-visual-conversion{
    position: absolute;
    top: -32px;
    right: 0;
    z-index: 3;
}
#top-visual-conversion:before{
    content: "";
    display: block;
    width: 40px;
    height: 40px;
    background: #BC5F22;
    position: absolute;
    bottom: -24px;
    left: 40px;
    border-radius: 50%;
}
#top-visual-conversion:after{
    content: "";
    display: block;
    width: 24px;
    height: 24px;
    background: #BC5F22;
    position: absolute;
    bottom: -36px;
    left: 4px;
    border-radius: 50%;
}


#top-visual-img{
    position: relative;
}
#top-visual-img:before{
    content: "";
    display: block;
    width: 100%;
    height: 50%;
    position: absolute;
    left: 0;
    bottom: 0;
    background: #101010;
}
.slide-item{
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

#top-visual-slider {
    box-shadow: rgba(9, 35, 64, 0.1) 4px 6px 16px 4px;
    border-radius: 32px;
}

.swiper-pagination{
    z-index: 3;
    bottom: 12px !important;
}
/* ドット全体 */
.swiper-pagination-bullet {
  background: #fff;     /* 通常は白 */
  opacity: 1;           /* デフォルトの透過をなくす */
  width: 12px;
    height: 12px;
    margin: 0 8px !important;
}

/* アクティブ状態 */
.swiper-pagination-bullet-active {
  background: #BC5F22;  /* 現在のスライド */
}

#sp-visual-conversion{
    display: none;
}

@media only screen and (max-width:1470px){

    #top-visual-conversion{
        right: 56px;
    }

}

@media only screen and (max-width:1320px){

    .slide-item{
        height: 50vw;
        min-height: 632px;
    }

}

@media only screen and (max-width:640px) and (max-device-width:1280px){

    #top-visual-copy {
        padding: 32px 0 32px;
    }
    .top-visual-copy-text{
        font-size: 10vw;
    }
    .slide-item{
        min-height: auto;
        height: 72vw;
        border-radius: 16px;
    }

    #top-visual-slider{
        border-radius: 16px 16px 0 0;
    }

    #top-visual-conversion{
        display: none;
    }
    #sp-visual-conversion{
        display: flex;
        position: relative;
        z-index: 2;
        margin-top: 24px;
    }
    #sp-visual-conversion:before {
        content: "";
        display: block;
        width: 40px;
        height: 40px;
        background: #BC5F22;
        position: absolute;
        top: -8px;
        left: 16px;
        border-radius: 50%;
    }
    #sp-visual-conversion:after {
        content: "";
        display: block;
        width: 24px;
        height: 24px;
        background: #BC5F22;
        position: absolute;
        top: -36px;
        left: -4px;
        border-radius: 50%;
    }
    /*#top-visual-conversion{
        position: relative;
        right: 0;
        top: 0;
    }*/

    #top-visual-img{
        background: #f2f2f2;
    }
    #top-visual-img .unicom-inner-lg{
        padding: 0;
    }
    #top-visual:after{
        content: "";
        background: #101010;
        display: block;
        width: 100%;
        height: 400px;
        position: absolute;
        left: 0;
        bottom: 0;
    }


}





/*------------------------------------------------------------
    #about｜TOP Page Parts
------------------------------------------------------------*/

article#top-article > section#about{
    background: #101010;
    color: #fff;
    padding-top: 80px;
}
section#about .section-title:before{
    background: #fff;
}

#about-concept-box{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.about-concept-logo{
    /*width: calc(100% / 3);*/
}
.about-concept-logo img{
    position: relative;
    left: -10px;
}
.about-concept-content{
    /*width: calc(100% / 3 * 2);*/
    display: flex;
    flex-wrap: wrap;
}
.about-concept-content-text{
    width: calc(100% - 172px);
    font-size: 24px;
    line-height: 2.4;
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 700;
    margin-top: -8px;
}
.about-concept-content-item {
    width: 172px;
    font-family: "Roboto", sans-serif;
    font-style: italic;
    font-optical-sizing: auto;
    font-size: 24px;
    position: relative;
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
}
.about-concept-content-item:after {
    content: "";
    display: block;
    width: 32px;
    height: 1px;
    background: #fff;
    position: relative;
    top: 22px;
    margin-left: 18px;
}
#about-introduction{
    margin-top: 72px;
}
.about-introduction-img img{
    display: block;
}
figure.floor-plan-box {
    /*padding: 40px;
    background: #fff;
    border-radius: 32px;*/
    text-align: center;
}

@media only screen and (max-width:640px) and (max-device-width:1280px){

    #about-concept-box{
        display: block;
    }
    .about-concept-logo{
        margin-bottom: 32px;
    }
    .about-concept-logo img{
        left: 0;
        width: 240px;
        display: block;
        margin: auto;
    }
    .about-concept-content{
        display: block;
    }
    .about-concept-content-item{
        width: 100%;
        font-size: 20px;
        margin-bottom: 16px;
    }
    .about-concept-content-item:after{
        top: 18px;
    }
    .about-concept-content-text{
        width: 100%;
        font-size: 4.38vw;
        margin-top: 0;
    }

    #about-introduction{
        margin-top: 40px;
    }
    .about-introduction-img-sp {
        margin: 32px 0 24px;
    }
    .about-introduction-img-note {
        font-size: 12px;
    }
    .about-introduction-img.unicom-sp {
        padding-bottom: 48px;
    }

}





/*------------------------------------------------------------
    #floor-plan｜TOP Page Parts
------------------------------------------------------------*/




@media only screen and (max-width:640px) and (max-device-width:1280px){

    

}







/*------------------------------------------------------------
    #rental-space｜TOP Page Parts
------------------------------------------------------------*/

article#top-article > section#rental-space{
    padding-bottom: 120px;
}
ul.rental-space-list{
    display: flex;
    flex-wrap: wrap;
    margin: -40px -20px 0;
}
ul.rental-space-list > li{
    width: 50%;
    padding: 40px 20px 0;
}
.rental-space-card{
    display: block;
    background: #fff;
    border-radius: 16px;
    padding: 12px 12px 24px;
    color: #101010;
    box-shadow: rgba(9, 35, 64, 0.1) 4px 6px 16px 4px;
}
a.rental-space-card{
    color: #101010;
}
a.rental-space-card:hover{
    opacity: 0.6;
}
.rental-space-photo{
    position: relative;
    margin-bottom: 20px;
    border-radius: 16px;
    overflow: hidden;
}
.rental-space-photo img{
    display: block;
    transition: all .3s;
    transform: scale(1);
}
a:hover .rental-space-photo img{
    transform: scale(1.1);
} 
.rental-space-photo .btn-decorate{
    background: #101010;
    color: #fff;
    top: unset;
    bottom: 12px;
    right: 12px;
    transform: none;
    -webkit-transform: none;
    -ms-transform: translateY(-50%);
}
a:hover .rental-space-photo .btn-decorate{
    background: #fff;
    color: #101010;
}

.rental-space-content{
    padding: 0 10px;
}
.rental-space-name{
    font-size: 28px;
    line-height: 1.5;
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 700;
    margin-bottom: 12px;
}
.rental-space-text{
    font-size: 15px;
    font-weight: 400;
    color: #404040;
    height: 115px;
}
table.rental-space-info{
    font-size: 15px;
    font-weight: 500;
    margin-top: 20px;
}
table.rental-space-info th {
    width: 85px;
}
.th-item{
    background: #F2F2F2;
    text-align: center;
    border-radius: 4px;
}
.td-text{
    padding-left: 15px;
}

table.rental-space-info tr:not(:first-of-type) .th-item{
    margin-top: 6px;
}
table.rental-space-info tr:not(:first-of-type) .td-text{
    margin-top: 6px;
}

@media only screen and (max-width:640px) and (max-device-width:1280px){

    ul.rental-space-list{
        margin: -32px 0 0;
    }
    ul.rental-space-list > li{
        width: 100%;
        padding: 32px 0 0;
    }

    .rental-space-content{
        padding: 0 5px;
    }
    .rental-space-name{
        font-size: 21px;
    }

    .rental-space-text {
        font-size: 14px;
        height: auto;
    }
    table.rental-space-info{
        font-size: 13px;
    }
    table.rental-space-info th{
        width: 70px;
    }
    .td-text {
        padding-left: 12px;
    }
    .rental-space-photo{
        border-radius: 8px;
    }
    .rental-space-photo .btn-decorate{
        bottom: 8px;
        right: 8px;
    }

    article#top-article > section#rental-space{
        padding-bottom: 80px;
    }

}




/*------------------------------------------------------------
    #example｜TOP Page Parts
------------------------------------------------------------*/

article#top-article > section#example{
    background: #fff;
    padding-bottom: 0;
    margin-bottom: -80px;
    position: relative;
}

#example-box{
    display: flex;
    flex-wrap: wrap;
    position: relative;
    z-index: 3;
}
#example-box .section-head{
    margin-bottom: 0;
    width: 345px;
}
#example-box .section-body{
    width: calc(100% - 345px);
}

ul.example-list{

}
ul.example-list > li:not(:first-of-type){
    margin-top: 24px;
}
.example-card {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
}
a.example-card:hover{
    opacity: 0.6;
}
.example-thumbnail{
    width: 294px;
    background: #A2A2A2;
    overflow: hidden;
    border-radius: 16px;
}
.example-thumbnail img{
    display: block;
    transition: all .3s;
    transform: scale(1);
    width: 100%;
    height: 182px;
    object-fit: cover;
}
a:hover .example-thumbnail img{
    transform: scale(1.1);
} 
.example-content{
    width: calc(100% - 294px);
    box-sizing: border-box;
    padding-left: 24px;
}
.example-title {
    font-size: 24px;
    line-height: 1.6;
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 600;
    box-sizing: border-box;
    padding-top: 4px;
}
p.example-description {
    margin-top: 12px;
}

table.example-info{
    font-size: 14px;
    font-weight: 500;
    margin-top: 20px;
}
table.example-info th{
    width: 108px;
}
.example-tags {
    display: flex;
    line-height: 1;
    margin-top: 10px;
}
.tag-item {
    font-size: 14px;
    display: inline-block;
    color: #666;
    font-weight: 500;
}
.tag-item:before {
    content: "#";
    color: #089FCE;
}
.example-tags .tag-item:not(:first-of-type) {
    margin-left: 8px;
}

@media only screen and (max-width:640px) and (max-device-width:1280px){

    article#top-article > section#example{
        padding-bottom: 80px;
        margin-bottom: 0;
    }
    #example-box{
        display: block;
    }
    #example-box .section-head{
        width: 100%;
        margin-bottom: 40px;
    }
    #example-box .section-body{
        width: 100%;
    }
    .example-card{
        display: block;
    }
    .example-thumbnail{
        width: 100%;
        margin-bottom: 16px;
    }
    .example-content{
        width: 100%;
        padding-left: 0;
    }
    .example-thumbnail img{
        height: auto;
    }
    .example-title{
        font-size: 21px;
        padding-top: 0;
    }
    table.example-info{
        font-size: 13px;
    }
    table.example-info th{
        width: 95px;
    }
    ul.example-list > li:not(:first-of-type){
        margin-top: 40px;
    }

}



/*------------------------------------------------------------
    #about-rental｜TOP Page Parts
------------------------------------------------------------*/

article#top-article > section#about-rental{
    background-image: url(../../exl/img/about_rental_bg.jpg);
    background-attachment: fixed;
    background-size: cover;
    background-position: center bottom;
    padding-bottom: 80px;
    position: relative;
    padding-top: calc(80px + 200px);
}
article#top-article > section#about-rental:before{
    content: "";
    display: block;
    background: rgba(0,0,0,0.64);
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
}
#about-rental-bgdecorate{
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    width: 100%;
}
#about-rental-bgdecorate:before{
    content: "";
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    width: 50%;
    height: 193px;
    background: #fff;
}
.about-rental-bgdecorate-img{
    background: url(../../exl/img/about_rental_bgdecorate.png);
    display: block;
    width: 100%;
    height: 209px;
    background-size: contain;
    background-position: top right;
    background-repeat: no-repeat;
}

#about-rental-box{
    position: relative;
    z-index: 3;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
}
#about-rental-box .section-head{
    color: #fff;
}
#about-rental-box .section-description{
    font-weight: 500;
    font-size: 18px;
    line-height: 2;
}
#about-rental-box .section-title:before{
    background: #fff;
    z-index: 3;
}
.main-conversion-name-logo {
    text-align: center;
    position: relative;
    bottom: 8px;
}
.main-conversion-name-logo img {
    display: block;
    height: 112px;
    object-fit: contain;
    margin: auto;
}

@media only screen and (max-width:1470px){

    .about-rental-bgdecorate-img{
        background-position: top left 60%;
    }

}

@media only screen and (max-width:640px) and (max-device-width:1280px){

    #about-rental-bgdecorate{
        display: none;
    }
    article#top-article > section#about-rental{
        padding-top: 80px;
        background-attachment: unset;
    }
    #about-rental-box .section-description{
        font-size: 16px;
    }
    #about-rental-box{
        display: block;
    }
    article#top-article > section#about-rental:before{
        background: rgba(0, 0, 0, 0.8);
    }
    .main-conversion-name-logo img{
        height: 92px;
    }


}







/*------------------------------------------------------------
    #faq｜TOP Page Parts
------------------------------------------------------------*/

article#top-article > section#faq{
    padding-bottom: 120px;
}
ul.faq-list{

}
ul.faq-list > li{
    border-radius: 8px;
    overflow: hidden;
    box-shadow: rgba(9, 35, 64, 0.1) 4px 6px 16px 4px;
}
ul.faq-list > li:not(:first-of-type){
    margin-top: 12px;
}
.question {
    background: #fff;
    border-radius: 8px 8px 0 0;
    padding: 20px 24px 20px 28px;
    cursor: pointer;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
}
.question:hover{
    opacity: 0.6;
}
.question-text {
    font-size: 18px;
    font-weight: 700;
    line-height: 1.6;
    padding-left: 40px;
    position: relative;
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    width: calc(100% - 20px);
    box-sizing: border-box;
    padding-right: 20px;
}
.question-text:before{
    content: "Q.";
    font-size: 20px;
    font-weight: 700;
    color: #945126;
    position: absolute;
    left: 0;
    top: 0;
    font-family: "Roboto", sans-serif;
    font-style: normal;
    font-optical-sizing: auto;
}
.answer {
    background: #fff;
    border-radius: 0 0 8px 8px;
    padding: 16px 24px 18px 28px;
    /* margin-top: 2px; */
    border-top: 2px solid #f2f2f2;
    display: none;
}
.answer-text{
    padding-left: 40px;
    position: relative;
}
.answer-text:before{
    content: "A.";
    font-size: 20px;
    font-weight: 700;
    position: absolute;
    left: 0;
    top: -2px;
    font-family: "Roboto", sans-serif;
    font-style: normal;
    font-optical-sizing: auto;
}
.answer-text a{
    color: rgba(148, 81, 38, 1);
    text-decoration: underline;
    font-weight: 500;
    margin: 0 4px;
}
.answer-text a:hover{
    color: #101010;
    text-decoration: none;
    opacity: 0.6;
}

.question-decorate {
  position: relative;
  width: 20px;
  height: 20px;
}
.question-decorate::before,
.question-decorate::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 20px;
  height: 2px;
  background: #333;
  transform: translate(-50%, -50%);
  transition: opacity 0.3s ease; /* 縦棒のふわっと消える/出る */
}
/* 横棒（-） */
.question-decorate::before {
  opacity: 1; /* 常に表示 */
}

/* 縦棒（|） */
.question-decorate::after {
  transform: translate(-50%, -50%) rotate(90deg);
  opacity: 1; /* 初期状態は表示（+） */
}

/* open時 → 縦棒を消してマイナスに */
.question.open .question-decorate::after {
  opacity: 0;
}


@media only screen and (max-width:640px) and (max-device-width:1280px){

    article#top-article > section#faq{
        padding-bottom: 80px;
    }
    .question {
        padding: 16px 16px 16px 16px;
    }
    .question-text {
        font-size: 15px;
        padding-left: 30px;
        width: calc(100% - 15px);
        padding-right: 15px;
    }
    .question-text:before {
        font-size: 18px;
        top: -2px;
    }
    .question-decorate {
        width: 15px;
        height: 15px;
    }
    .question-decorate::before, .question-decorate::after {
        width: 15px;
    }
    .answer {
        padding: 16px 16px 16px 16px;
    }
    .answer-text {
        padding-left: 30px;
    }
    .answer-text:before {
        font-size: 18px;
        top: -2px;
    }

}






/*------------------------------------------------------------
    #access｜TOP Page Parts
------------------------------------------------------------*/

article#top-article > section#access{
    background: #fff;
    padding-bottom: 100px;
}
#access-box{
    display: flex;
    flex-wrap: wrap;
}
#access-box .section-head{
    margin-bottom: 0;
    width: calc(100% - 596px);
    box-sizing: border-box;
    padding-right: 48px;
}
#access-box .section-body{
    width: 596px;
}
#access-movie{
    width: 100%;
    margin-top: 40px;
}
#access-movie iframe{
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: 16 / 9;
}

#access-map {
    height: 418px;
}
#access-map iframe {
    height: 100%;
}

ul.access-info{
    margin-top: 12px;
}
ul.access-info li{
    font-size: 15px;
}
ul.access-info li:before{
    content: "・";
    margin-right: 4px;
}

@media only screen and (max-width:640px) and (max-device-width:1280px){

    article#top-article > section#access{
        padding-bottom: 80px;
    }
    #access-box{
        display: block;
    }
    #access-box .section-head{
        width: 100%;
        padding-right: 0;
        margin-bottom: 40px;
    }
    #access-box .section-body{
        width: 100%;
    }
    #access-map{
        width: 100%;
        height: auto;
    }
    #access-map iframe{
        display: block;
        width: 100%;
        height: calc(100vw - 30px);
    }

}






/*------------------------------------------------------------
    aside#commmon-conversion｜TOP Page Parts
------------------------------------------------------------*/

aside#commmon-conversion{
    background: #fff;
    padding: 100px 0 120px;
}

ul.commmon-conversion-btn{
    display: flex;
    flex-wrap: wrap;
    margin: 0 -20px;
}
ul.commmon-conversion-btn > li{
    width: 50%;
    box-sizing: border-box;
    padding: 0 20px;
}
ul.commmon-conversion-btn > li a{
    display: block;
    border-radius: 16px;
    height: 210px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    background: #101010;
    color: #fff;
    position: relative;
    border: 2px solid #101010;
    box-shadow: rgba(9, 35, 64, 0.1) 4px 6px 16px 4px;
}
ul.commmon-conversion-btn > li a:hover{
    color: #101010;
    background: #fff;
}
.commmon-conversion-btn-text{
    font-size: 32px;
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 700;
}
ul.commmon-conversion-btn > li a .btn-decorate{
    right: 32px;
    color: #101010;
}
ul.commmon-conversion-btn > li a:hover .btn-decorate{
    background: #101010;
    color: #fff;
}
ul.commmon-conversion-btn > li.reservation a{
    background: #945126;
    background: linear-gradient(135deg, rgba(148, 81, 38, 1) 0%, rgba(188, 95, 34, 1) 100%);
    border: 2px solid rgba(148, 81, 38, 1);
}
ul.commmon-conversion-btn > li.reservation a .btn-decorate{
    background: #fff;
    color: rgba(148, 81, 38, 1);
}
ul.commmon-conversion-btn > li.reservation a:hover{
    background: #fff;
    color: rgba(148, 81, 38, 1);
}
ul.commmon-conversion-btn > li.reservation a:hover .btn-decorate{
    color: #fff;
    background: rgba(148, 81, 38, 1);
}


.commmon-conversion-contact{
    margin-top: 32px;
}
.commmon-conversion-contact > a{
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    height: 100px;
    border-radius: 16px;
    background: #F2F2F2;
    color: #101010;
    font-size: 24px;
    font-weight: 700;
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    position: relative;
}
.commmon-conversion-contact > a:hover{
    background: #101010;
    color: #fff;
}
.commmon-conversion-contact > a .btn-decorate{
    right: 32px;
    box-sizing: border-box;
    border: 1px solid #fff;
}
.commmon-conversion-contact > a:hover .btn-decorate{
    background: #101010;
}

@media only screen and (max-width:640px) and (max-device-width:1280px){

    aside#commmon-conversion{
        padding: 80px 0 80px;
    }
    ul.commmon-conversion-btn{
        display: block;
        margin: 0;
    }
    ul.commmon-conversion-btn > li{
        width: 100%;
        padding: 0;
    }
    li.usage-guide{
        margin-top: 24px;
    }
    ul.commmon-conversion-btn > li a .btn-decorate{
        right: 16px;
    }
    ul.commmon-conversion-btn > li a{
        height: 120px;
    }
    .commmon-conversion-btn-text{
        font-size: 18px;
    }
    .commmon-conversion-contact{
        margin-top: 24px;
    }
    .commmon-conversion-contact > a {
        height: 120px;
        font-size: 18px;
        line-height: 1.5;
        text-align: center;
    }
    .commmon-conversion-contact > a .btn-decorate{
        right: 16px;
    }

}






/*------------------------------------------------------------
    レンタルスペース子ページパーツ
------------------------------------------------------------*/


/* #rental-space-visual */
#rental-space-visual{
    padding: 40px 0 0;
}
#rental-space-visual-copy{
    margin-bottom: 48px;
    text-align: center;
}
.rental-space-visual-copy-name {
    font-size: 48px;
    line-height: 1.4;
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 700;
}
.rental-space-visual-copy-name:before{
    content: "「";
    margin-right: 4px;
}
.rental-space-visual-copy-name:after{
    content: "」";
    margin-left: 4px;
}
.rental-space-visual-copy-cat {
    font-size: 24px;
    line-height: 1.4;
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 500;
    margin-bottom: 8px;
}
.rental-space-visual-copy-description {
    margin-top: 24px;
}
#rental-space-visual-img {
    position: relative;
}
#rental-space-visual-img:before {
    content: "";
    display: block;
    width: 100%;
    height: 50%;
    position: absolute;
    left: 0;
    bottom: 0;
    background: #fff;
}

@media only screen and (max-width:640px) and (max-device-width:1280px){

    .rental-space-visual-copy-cat{
        font-size: 16px;
    }
    .rental-space-visual-copy-name{
        font-size: 32px;
    }
    .rental-space-visual-copy-description{
        text-align: left;
    }
    #rental-space-visual-copy{
        margin-bottom: 40px;
    }
    #rental-space-visual-img .unicom-inner-lg{
        padding: 0;
    }

}


/* article#rental-space-article */
article#rental-space-article{
    background: #fff;
}
article#rental-space-article section{
    padding-top: 100px;
}
article#rental-space-article .section-head{
    margin-bottom: 40px;
}
article#rental-space-article .section-title{
    font-size: 32px;
}
article#rental-space-article .section-title:before {
    width: 16px;
    height: 16px;
    top: 18px;
    left: -38px;
}


@media only screen and (max-width:640px) and (max-device-width:1280px){

    article#rental-space-article section{
        padding-top: 80px;
    }
    article#rental-space-article .section-title {
        font-size: 24px;
        padding-left: 24px;
    }
    article#rental-space-article .section-title:before {
        width: 12px;
        height: 12px;
        top: 14px;
        left: 0;
    }
    article#rental-space-article .section-head{
        margin-bottom: 32px;
    }

}




/* #equipment-introduction */
#equipment-introduction{
    margin-top: 72px;
}
.equipment-introduction-title {
    font-size: 28px;
    font-weight: 700;
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    position: relative;
    text-align: center;
    max-width: 980px;
    margin: 0 auto 32px;
}
.equipment-introduction-title:before{
    content: "";
    display: block;
    width: 100%;
    height: 2px;
    background: #101010;
    position: absolute;
    top: 50%;
    left: 0px;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);

}
.equipment-introduction-title span{
    background: #fff;
    display: inline-block;
    padding: 0 32px;
    position: relative;
    bottom: 2px;
}

#equipment-introduction-box {

}

.equipment-swiper {
  padding: 40px 0;
}

.equipment-swiper .swiper-slide {
  text-align: center;
  transition: transform 0.4s ease, opacity 0.4s ease;
  opacity: 0.3;
}

.equipment-swiper .swiper-slide img {
  width: 100%;
  display: block;
  border-radius: 12px;
}

.equipment-swiper .equipment-name {
  margin-top: 10px;
  font-size: 16px;
  font-weight: bold;
  opacity: 0;
  transition: opacity 0.3s ease;
}

/* 中央スライドだけ拡大＆名前表示 */
.equipment-swiper .swiper-slide-active {
  transform: scale(1.2);
  opacity: 1;
  z-index: 2;
}
.equipment-swiper .swiper-slide-active img{
    box-shadow: rgba(9, 35, 64, 0.1) 4px 6px 16px 4px;
}

.equipment-swiper .swiper-slide-active .equipment-name {
  opacity: 1;
}
#equipment-introduction .swiper-pagination {
  margin-top: 32px;
  text-align: center;
  position: relative; /* デフォルトのabsoluteを解除 */
}
#equipment-introduction .swiper-pagination-bullet{
    background: #ddd;
}
#equipment-introduction .swiper-pagination-bullet-active{
    background: #BC5F22;
}

@media only screen and (max-width:640px) and (max-device-width:1280px){

    .equipment-introduction-title {
        font-size: 22px;
        margin: 0 auto 16px;
    }
    .equipment-introduction-title:before{
        width: calc(100% - 30px);
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
    }
    #equipment-introduction .swiper-pagination{
        margin-top: 16px;
    }
    .equipment-swiper .equipment-name{
        font-size: 14px;
        margin-top: 8px;
    }

}


/* section#spec */
table.spec-table{
    width: 100%;
    font-size: 18px;
}
table.spec-table tr{
    border-bottom: 1px solid #dfdfdf;
}
table.spec-table tr:first-of-type{
    border-top: 1px solid #dfdfdf;
}
table.spec-table tr th{
    padding: 20px 20px 20px 0;
    font-weight: 700;
    line-height: 1.75;
}
table.spec-table tr td{
    padding: 20px 20px 20px 40px;
    font-weight: 500;
    line-height: 1.75;
}

table.spec-table tr td .btn-decorate {
    position: relative;
    top: 1px;
    right: 0;
    transform: none;
    -webkit-transform: none;
    background: rgba(148, 81, 38, 1);
    color: #fff;
    display: inline-flex;
    width: 24px;
    height: 24px;
    margin-left: 8px;
}
table.spec-table tr td .btn-decorate .material-symbols-outlined{
    font-size: 16px;
}
table.spec-table tr td a .spec-table-link{
    color: rgba(148, 81, 38, 1);
    text-decoration: underline;
}
table.spec-table tr td a:hover .spec-table-link{
    color: #101010;
    text-decoration: none;
    opacity: 0.6;
}
table.spec-table tr td a:hover .btn-decorate{
    background: #101010;
}



/* section#rental-equipment */
ul.rental-equipment-list{
    display: flex;
    flex-wrap: wrap;
    margin: -24px -10px 0;
}
ul.rental-equipment-list > li{
    width: calc(100% / 5);
    box-sizing: border-box;
    padding: 24px 10px 0;
}
.rental-equipment-photo{
    border-radius: 8px;
    overflow: hidden;
    /*box-shadow: rgba(9, 35, 64, 0.1) 4px 6px 16px 4px;*/
}
.rental-equipment-photo img{
    width: 100%;
    height: 180px;
    object-fit: cover;
    display: block;
}
.rental-equipment-name{
    font-size: 15px;
    line-height: 1.5;
    margin-top: 6px;
}
ul.rental-equipment-supplement {
    margin-top: 48px;
    border-top: 1px solid #dfdfdf;
    padding-top: 32px;
}
ul.rental-equipment-supplement li{
    font-size: 13px;
    line-height: 1.6;
    color: #404040;
}
ul.rental-equipment-supplement li:not(:first-of-type){
    margin-top: 8px;
}

@media only screen and (max-width:640px) and (max-device-width:1280px){

    table.spec-table{
        font-size: 14px;
    }
    table.spec-table tr th{
        display: block;
        width: 100%;
        padding: 20px 0px 12px 0;
    }
    table.spec-table tr td{
        display: block;
        width: 100%;
        padding: 0px 0px 20px 0px;
        font-size: 15px;
    }
    ul.rental-equipment-list{
        margin: -20px -7.5px 0;
    }
    ul.rental-equipment-list > li{
        width: calc(100% / 3);
        padding: 20px 7.5px 0;
    }
    .rental-equipment-photo img{
        height: 28vw;
    }
    .rental-equipment-name{
        font-size: 13px;
    }
    ul.rental-equipment-supplement {
        margin-top: 40px;
        padding-top: 24px;
    }
    ul.rental-equipment-supplement li{
        font-size: 12px;
    }

}



/* aside#other-rental-space */
aside#other-rental-space{
    padding: 100px 0;
}
.other-rental-space-title {
    font-size: 32px;
    font-weight: 700;
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    position: relative;
    text-align: center;
    margin-bottom: 40px;
}

ul.other-rental-space-list{
    display: flex;
    flex-wrap: wrap;
    margin: 0 -10px;
}
ul.other-rental-space-list > li{
    width: calc(100% / 3);
    box-sizing: border-box;
    padding: 0 10px;
}

ul.other-rental-space-list > li .rental-space-photo {
    margin-bottom: 16px;
}
ul.other-rental-space-list > li .rental-space-content {
    padding: 0 5px;
}
ul.other-rental-space-list > li .rental-space-name {
    font-size: 22px;
    margin-bottom: 12px;
}
ul.other-rental-space-list > li table.rental-space-info {
    font-size: 14px;
    font-weight: 500;
    margin-top: 16px;
    line-height: 1.75;
}
ul.other-rental-space-list > li table.rental-space-info th {
    width: 80px;
}




@media only screen and (max-width:640px) and (max-device-width:1280px){

    aside#other-rental-space{
        padding: 80px 0;
    }
    .other-rental-space-title{
        font-size: 24px;
        margin-bottom: 32px;
    }
    ul.other-rental-space-list{
        margin: 0;
    }
    ul.other-rental-space-list > li{
        width: 100%;
        padding: 0;
    }
    ul.other-rental-space-list > li:not(:first-of-type){
        margin-top: 32px;
    }

}







/*------------------------------------------------------------
    子ページパーツ
------------------------------------------------------------*/

#page-visual {
    padding: 40px 0 0;
}
.page-visual-copy-name {
    font-size: 48px;
    line-height: 1.4;
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 700;
}
.page-visual-copy-description {
    margin-top: 24px;
}
#page-visual-copy {
    text-align: center;
}
article#page-article section {
    padding-top: 100px;
}
article#page-article section:first-of-type {
    padding-top: 80px;
}
article#page-article section:last-of-type {
    padding-bottom: 100px;
}
article#page-article .section-title {
    font-size: 32px;
}
article#page-article .section-title:before {
    width: 16px;
    height: 16px;
    top: 18px;
    left: -38px;
}
article#page-article .section-head {
    margin-bottom: 40px;
}


@media only screen and (max-width:640px) and (max-device-width:1280px){

    .page-visual-copy-name{
        font-size: 32px;
    }
    article#page-article section:first-of-type{
        padding-top: 56px;
    }
    article#page-article .section-title {
        font-size: 24px;
        padding-left: 24px;
    }
    article#page-article .section-title:before {
        width: 12px;
        height: 12px;
        top: 14px;
        left: 0;
    }
    article#page-article .section-head{
        margin-bottom: 32px;
    }
    article#page-article section{
        padding-top: 80px;
    }
    article#page-article section:last-of-type{
        padding-bottom: 80px;
    }

}




/*------------------------------------------------------------
    セルフキッチンページ専用
------------------------------------------------------------*/

#self-kitchen ul.rental-equipment-list > li{
    width: calc(100% / 4);
}
#self-kitchen .rental-equipment-photo img{
    height: 152px;
}

@media only screen and (max-width:640px) and (max-device-width:1280px){

    #self-kitchen ul.rental-equipment-list > li {
        width: calc(100% / 2);
    }
    #self-kitchen .rental-equipment-photo img {
        height: 30vw;
    }



}

