@charset "UTF-8";

/*================================================================
# section-room01
================================================================ */
.section-room01 {
    margin-top: 40px;
}

.section-room01 .wrap {
    position: relative;
}

.section-room01 .wrap::before {
    filter: var(--img-invert);
    mix-blend-mode: var(--blend-mode);
    width: calc(50vw + 50% - 160px);
    height: 100%;
    background: #fff url(../../common/img/section01_bg.png) no-repeat right top;
    position: absolute;
    content: "";
    top: 0;
    left: calc(-50vw + 50%);
    display: block;
    z-index: -1;
}

.section-room01 .inner {
    padding: 40px 0 64px;
}

.section-room01 .container {
    display: flex;
}

.section-room01 .left {
    width: 687px;
}

.section-room01 .right {
    padding: 100px 0 0 72px;
    position: relative;
}

.section-room01 .img-wrap {
    position: relative;
}

.section-room01 .section-room01_img01 {
    width: 529px;
    position: absolute;
    top: 100px;
    left: -400px;
    z-index: -1;
}

.section-room01 .text-area {
    width: 400px;
    margin: 40px 0 0 auto;
    position: relative;
}

.section-room01 .en-title {
    position: relative;
    font-family: var(--text-en);
    font-size: 16px;
    line-height: 1.618;
    color: var(--gold);
}

.section-room01 .en-title span {
    position: relative;
}

.section-room01 .en-title span::before {
    width: 100px;
    height: 1px;
    margin: auto 0;
    background-color: var(--border-color);
    ;
    position: absolute;
    content: '';
    top: 0;
    right: 0;
    bottom: 0;
    transform: translate(124px, 0);
}

.section-room01 .en-title span::after {
    width: 100px;
    height: 87px;
    margin: auto 0;
    background: url(../img/dogs-allowed.png) no-repeat center top / contain;
    position: absolute;
    content: '';
    bottom: 0;
    right: 0;
    bottom: 0;
    transform: translate(240px, 0);
}

.section-room01 .text {
    margin-top: 40px;
}

.section-room01 .gold-btn {
    width: 400px;
    margin-top: 24px;
}

.section-room01 .section-room01_img03 {
    width: 288px;
    position: absolute;
    top: 75px;
    left: -340px;
}

.section-room01 .section-room01_img04 {
    margin-left: 80px;
}

.section-room01 .sub-title {
    margin-left: 8px;
    font-family: var(--mincho);
    font-size: 20px;
    line-height: 1.618;
    letter-spacing: .3em;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    -webkit-font-feature-settings: 'pkna';
    font-feature-settings: 'pkna';
}

.section-room01 .title-wrap {
    margin-top: 64px;
    display: flex;
    justify-content: flex-end;
    flex-direction: row-reverse;
}

.section-room01 .title {
    margin: 0 0 0 24px;
    font-family: var(--mincho);
    font-size: 32px;
    line-height: 1.618;
    letter-spacing: .2em;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    -webkit-font-feature-settings: 'pkna';
    font-feature-settings: 'pkna';
}

/*================================================================
# section-room02
================================================================ */
.section-room02 {
    margin-top: 40px;
}

.section-room02 .wrap {
    position: relative;
}

.section-room02 .wrap::before {
    filter: var(--img-invert);
    mix-blend-mode: var(--blend-mode);
    width: calc(50vw + 50% - 160px);
    height: 100%;
    background: #fff url(../../common/img/section02_bg.png) no-repeat left top;
    position: absolute;
    content: "";
    top: 0;
    right: calc(-50vw + 50%);
    display: block;
    z-index: -1;
}

.section-room02 .inner {
    padding: 40px 0 64px;
}

.section-room02 .container {
    display: flex;
}

.section-room02 .left {
    width: 420px;
    padding: 63px 72px 0 0;
    position: relative;
}

.section-room02 .title-wrap {
    display: flex;
    flex-direction: row-reverse;
}

.section-room02 .sub-title {
    margin-left: 8px;
    font-family: var(--mincho);
    font-size: 20px;
    line-height: 1.618;
    letter-spacing: .3em;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    -webkit-font-feature-settings: 'pkna';
    font-feature-settings: 'pkna';
}

.section-room02 .title {
    font-family: var(--mincho);
    font-size: 32px;
    line-height: 1.618;
    letter-spacing: .2em;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    -webkit-font-feature-settings: 'pkna';
    font-feature-settings: 'pkna';
}

.section-room02 .section-room02_img01 {
    width: 456px;
    position: absolute;
    bottom: 172px;
    left: -267px;
    z-index: -1;
}

.section-room02 .section-room02_img02 {
    margin-top: 46px;
}

.section-room02 .section-room02_img03 {
    margin-left: 40px;
}

.section-room02 .text-area {
    width: 700px;
    margin: 40px 0 0 auto;
    position: relative;
}

.section-room02 .en-title {
    font-family: var(--text-en);
    font-size: 16px;
    line-height: 1.618;
    color: var(--gold);
}

.section-room02 .en-title span {
    position: relative;
}

.section-room02 .en-title span::before {
    width: 100px;
    height: 1px;
    margin: auto 0;
    background-color: var(--border-color);
    ;
    position: absolute;
    content: '';
    top: 0;
    right: 0;
    bottom: 0;
    transform: translate(124px, 0);
}

.section-room02 .en-title span::after {
    width: 100px;
    height: 87px;
    margin: auto 0;
    background: url(../img/dogs-allowed.png) no-repeat center top / contain;
    position: absolute;
    content: '';
    bottom: 0;
    right: 0;
    bottom: 0;
    transform: translate(240px, 0);
}

.section-room02 .text {
    margin-top: 40px;
}

.section-room02 .gold-btn {
    width: 400px;
    margin-top: 24px;
}

/*================================================================
# section-room03
================================================================ */
.section-room03 {
    margin-top: 40px;
}

.section-room03 .wrap {
    position: relative;
}

.section-room03 .wrap::before {
    filter: var(--img-invert);
    mix-blend-mode: var(--blend-mode);
    width: calc(50vw + 50% - 160px);
    height: 100%;
    background: #fff url(../../common/img/section03_bg.png) no-repeat right top;
    position: absolute;
    content: "";
    top: 0;
    left: calc(-50vw + 50%);
    display: block;
    z-index: -1;
}

.section-room03 .inner {
    padding: 40px 0 64px;
}

.section-room03 .container {
    display: flex;
}

.section-room03 .left {
    width: 20%;
    padding: 160px 0 0 0;
    position: relative;
}

.section-room03 .right {
    width: 80%;
    padding: 0 0 0 72px;
}

.section-room03 .section-room03_img01 {
    width: 434px;
    position: absolute;
    top: -41px;
    left: -134px;
    z-index: -1;
}

.section-room03 .section-room03_img02 {
    text-align: right;
}

.section-room03 .title-wrap {
    margin-top: 60px;
    position: relative;
    display: flex;
    flex-direction: row-reverse;
}

.section-room03 .sub-title {
    margin-left: 8px;
    font-family: var(--mincho);
    font-size: 20px;
    line-height: 1.618;
    letter-spacing: .3em;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    -webkit-font-feature-settings: 'pkna';
    font-feature-settings: 'pkna';
}

.section-room03 .title {
    font-family: var(--mincho);
    font-size: 32px;
    line-height: 1.618;
    letter-spacing: .2em;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    -webkit-font-feature-settings: 'pkna';
    font-feature-settings: 'pkna';
}

.section-room03 .section-room03_img03 {
    width: 270px;
    position: absolute;
    top: 130px;
    left: -227px;
    z-index: -1;
}

.section-room03 .section-room03_img04 {
    margin-left: 80px;
}

.section-room03 .text-area {
    margin: 40px 0 0 auto;
    position: relative;
}

.section-room03 .en-title {
    font-family: var(--text-en);
    font-size: 16px;
    line-height: 1.618;
    color: var(--gold);
}

.section-room03 .en-title span {
    position: relative;
}

.section-room03 .en-title span::before {
    width: 100px;
    height: 1px;
    margin: auto 0;
    background-color: var(--border-color);
    ;
    position: absolute;
    content: '';
    top: 0;
    right: 0;
    bottom: 0;
    transform: translate(124px, 0);
}

.section-room03 .en-title span::after {
    width: 100px;
    height: 87px;
    margin: auto 0;
    background: url(../img/dogs-allowed.png) no-repeat center top / contain;
    position: absolute;
    content: '';
    bottom: 0;
    right: 0;
    bottom: 0;
    transform: translate(240px, 0);
}

.section-room03 .text {
    margin-top: 40px;
}

.section-room03 .gold-btn {
    width: 400px;
    margin-top: 24px;
}

.section-room03 .section-room03_img05 {
    width: 474px;
    position: absolute;
    top: 96px;
    right: -112px;
    z-index: -1;
}

/*================================================================
# section-room04
================================================================ */
.section-room04 {
    margin-top: 40px;
}

.section-room04 .wrap {
    position: relative;
}

.section-room04 .wrap::before {
    filter: var(--img-invert);
    mix-blend-mode: var(--blend-mode);
    width: calc(50vw + 50% - 160px);
    height: 100%;
    background: #fff url(../../common/img/section04_bg.png) no-repeat left top;
    position: absolute;
    content: "";
    top: 0;
    right: calc(-50vw + 50%);
    display: block;
    z-index: -1;
}

.section-room04 .inner {
    padding: 40px 0 64px;
}

.section-room04 .container {
    position: relative;
    display: flex;
}

.section-room04 .left {
    width: 70%;
}

.section-room04 .right {
    width: 30%;
    padding: 0 0 0 72px;
}

.section-room04_img02 {
    width: 419px;
    position: absolute;
    top: 405px;
    right: -229px;
    z-index: -1;
}

.section-room04_img03 {
    width: 270px;
    position: absolute;
    top: 177px;
    right: -156px;
    z-index: -1;
}

.section-room04 .title-wrap {
    display: flex;
    flex-direction: row-reverse;
    margin-top: 65px;
}

.section-room04 .sub-title {
    margin: 0 auto 0 8px;
    font-family: var(--mincho);
    font-size: 20px;
    line-height: 1.618;
    letter-spacing: .3em;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    -webkit-font-feature-settings: 'pkna';
    font-feature-settings: 'pkna';
}

.section-room04 .title {
    font-family: var(--mincho);
    font-size: 32px;
    line-height: 1.618;
    letter-spacing: .2em;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    -webkit-font-feature-settings: 'pkna';
    font-feature-settings: 'pkna';
}

.section-room04 .text-area {
    width: 640px;
    margin: 40px 0 0 267px;
    position: relative;
}

.section-room04 .en-title {
    font-family: var(--text-en);
    font-size: 16px;
    line-height: 1.618;
    color: var(--gold);
}

.section-room04 .en-title span {
    position: relative;
}

.section-room04 .en-title span::before {
    width: 100px;
    height: 1px;
    margin: auto 0;
    background-color: var(--border-color);
    ;
    position: absolute;
    content: '';
    top: 0;
    right: 0;
    bottom: 0;
    transform: translate(124px, 0);
}

.section-room04 .en-title span::after {
    width: 100px;
    height: 87px;
    margin: auto 0;
    background: url(../img/dogs-allowed.png) no-repeat center top / contain;
    position: absolute;
    content: '';
    bottom: 0;
    right: 0;
    bottom: 0;
    transform: translate(240px, 0);
}

.section-room04 .text {
    margin-top: 40px;
}

.section-room04 .gold-btn {
    width: 400px;
    margin-top: 24px;
}

.section-room04 .section-room04_img04 {
    width: 420px;
    position: absolute;
    bottom: -64px;
    right: -81px;
}