@charset "utf-8";
main{
    background: url(../img/airyspa_service_flow/bg.png) no-repeat top center / 100% auto;
}
.c-subhead-ttlwrap{
    background-image: url(../img/airyspa_service_flow/head_bg.jpg);
}
.p-intro{
    position: relative;
    padding: 1rem 0;
}
.p-intro-deco{
    position: absolute;
    top: 0;
    left: 0;
    color: rgba(233,217,173,.4);
}
.p-flow-box{
    display: grid;
    gap: .9rem;
}
.p-flow-box-item{
    padding: 1rem 1rem .6rem;
    background: linear-gradient(45deg,rgba(187,167,151,.75),rgba(228,212,187,.75));
    position: relative;
    display: flex;
    align-items: flex-end;
    gap: .4rem;
}
.p-flow-box-item:nth-child(even){
    background: linear-gradient(45deg,rgba(235,226,218,.75),rgba(237,230,226,.75));
}
.p-flow-box-item:not(:last-child)::after{
    content: '';
    width: .65rem;
    height: .3rem;
    background: linear-gradient(45deg,#d2955c,#d9a961);
    clip-path: polygon(0 0, 100% 0, 50% 100%);
    position: absolute;
    bottom: calc(-.3rem + -.35rem);
    right: 0;
    left: 0;
    margin: auto;
}
.p-flow-box-item > *{
    position: relative;
    z-index: 1;
}
.p-flow-box-item > div{
    display: grid;
    gap: .1rem;
}
.p-flow-box-item > figure{
    flex: 0 0 340px;
}
.p-flow-box-item-num{
    font-size: 1.5rem;
    letter-spacing: -.05rem;
    color: #fff;
    position: absolute;
    top: -.2rem;
    left: -.2rem;
    z-index: 0;
}
.p-faq{
    position: relative;
    padding: 1rem 0;
    background: url(../img/airyspa_service_flow/faq_bg.png) no-repeat top center / 100% auto;
}
.p-faq-deco{
    position: absolute;
    top: 0;
    right: 0;
    color: rgba(233,217,173,.4);
}
.p-faq-list{
    display: grid;
    gap: .3rem;
}
.p-faq-list dl{
    display: grid;
    gap: .2rem;
    position: relative;
}
.p-faq-list dt{
    cursor: pointer;
    position: relative;
    display: flex;
    align-items: center;
    gap: .1rem;
    min-height: 75px;
    background: #d2b8a5;
    padding: .1rem 1rem .1rem .5rem;
}
.p-faq-list dt::before,
.p-faq-list dt::after{
    position: absolute;
    content: '';
    top: 0;
    right: .4rem;
    bottom: 0;
    width: 20px;
    height: 2px;
    margin: auto;
    background: #000;
}
.p-faq-list dt::after{
    transform: rotate(-90deg);
    transition: transform .3s;
}
.p-faq-list dt.is-active::after{
    transform:rotate(0deg);
}
.p-faq-list dt span{
    display: inline-block;
    text-indent: -1em;
    padding-left: 1em;
}
.p-faq-list dt span::before{
    content: 'Q.';
}
.p-faq-list dd{
    display: none;
    text-indent: -1em;
    padding-left: 1em;
    margin: 0 .4rem;
}
.p-faq-list dd::before{
    content: 'A.';
}
@media only screen and (max-width: 1024px) {
    .p-intro{
        padding-top: 2rem;
    }
    .p-flow-box-item{
        flex-direction: column;
        padding: 1.2rem .5rem .5rem;
    }
    .p-flow-box-item > figure{
        flex: 1;
    }
}