@charset "UTF-8";
/* :::::::::::::::::::: helper class :::::::::::::::::::: */
/* ::::: pc, tab, sp ::::: */
.pc {
    display: block;
}
.sp {
    display: none;
}
@media screen and (max-width: 850px) {
	.pc {
		display: none !important;
	}
	.sp {
		display: block !important;
	}
}
/* ::::: End pc, tab, sp ::::: */
/* ::::: wrapper ::::: */
.wrapper {
    position: relative;
	width: calc(100% - 6rem);
	max-width: 108rem;
	margin: 0 auto;
}
.small_wrapper {
    max-width: 800px;
    padding: 0 5%;
    margin: 0 auto;
}
@media screen and (max-width: 850px) {
	.wrapper {
		width: 90%;
	}
}
/* ::::: End wrapper ::::: */
/* ::::: en ::::: */
.-en {
    font-family: "EB Garamond", serif;
    letter-spacing: 0.2em;
}
/* ::::: End en ::::: */
/* ::::: text ::::: */
.text {
    font-size: 1.5rem;
    line-height: 2;
}
.text + .text {
    margin-top: 3rem;
}
/* ::::: End text ::::: */
/* ::::: underline ::::: */
.underline {
    text-decoration: underline;
}
/* ::::: End underline ::::: */
/* ::::: hover-opacity ::::: */
.itemLink,
.hover-opacity {
    transition: opacity .3s;
}
@media (hover: hover) {
    .itemLink:hover,
    .hover-opacity:hover {
        opacity: 0.5;
    }
}
/* ::::: End hover-opacity ::::: */
/* ::::: text-link ::::: */
.text-link {
    text-decoration: underline;
    opacity: 1;
    transition: opacity .3s;
}
@media (hover: hover) {
    .text-link:hover {
        opacity: .7;
    }
}
/* ::::: End text-link ::::: */
/* ::::: inview ::::: */
.inview {
    transition: filter 1.8s 0.3s, opacity 1.8s 0.3s, transform 1.8s 0.3s;
    transform: translate(0, 5px);
    opacity: 0;
}
.inview.show {
    transform: translate(0, 0);
    opacity: 1.0;
}
/* ::::: End inview ::::: */
/* :::::::::::::::::::: End helper class :::::::::::::::::::: */
/* :::::::::::::::::::: common module :::::::::::::::::::: */
/* ::::: warn-text ::::: */
.warn-text {
    position: relative;
    padding-left: 1.5em;
    font-size: 1.4rem;
    line-height: 2;
    color: #888888;
}
.warn-text::before {
    content: '※';
    position: absolute;
    top: 0;
    left: 0;
    font-size: 1.4rem;
    line-height: 2;
    color: #888888;
}
/* ----- warn-text responsive (1000) ----- */
@media screen and (max-width: 1000px) {
    .warn-text {
        position: relative;
        padding-left: 1.5em;
        font-size: 1.4rem;
        line-height: 2;
        color: #888888;
    }
    .warn-text::before {
        content: '※';
        position: absolute;
        top: 0;
        left: 0;
        font-size: 1.4rem;
        line-height: 2;
        color: #888888;
    }
}
/* ::::: End warn-text ::::: */
/* ::::: common-ul ::::: */
.common-ul {}
.common-ul__item {
    position: relative;
    padding-left: 1em;
    font-size: 1.5rem;
    line-height: 2;
}
.common-ul__item::before {
    content: '・';
    position: absolute;
    top: 0;
    left: 0;
    font-size: 1.5rem;
    line-height: 2;
    color: #fff;
}
/* ----- common-ul responsive (1000) ----- */
@media screen and (max-width: 1000px) {
    .common-ul {}
    .common-ul__item {
        position: relative;
        padding-left: 1em;
    }
    .common-ul__item::before {
        content: '・';
        position: absolute;
        top: 0;
        left: 0;
        font-size: 1.5rem;
        line-height: 2;
        color: #fff;
    }
}
/* ::::: End common-ul ::::: */
/* ::::: c-ul ::::: */
.c-ul {}
.c-ul__item {
    position: relative;
    padding-left: 1em;
    font-size: 1.5rem;
    line-height: 2;
}
.c-ul__item::before {
    content: '・';
    position: absolute;
    top: 0;
    left: 0;
    font-size: 1.5rem;
    line-height: 2;
    color: #fff;
}
/* ----- c-ul responsive (1000) ----- */
@media screen and (max-width: 1000px) {
    .c-ul {}
    .c-ul__item {
        position: relative;
        padding-left: 1em;
    }
    .c-ul__item::before {
        content: '・';
        position: absolute;
        top: 0;
        left: 0;
        font-size: 1.5rem;
        line-height: 2;
        color: #fff;
    }
}
/* ::::: End c-ul ::::: */
/* ::::: common-table ::::: */
.common-table {
    overflow: hidden;
    box-sizing: border-box;
    width: 100%;
    width: 100%;
    border-radius: 10px;
    /* border-collapse: separate;
    border-spacing: 0; */
    background-color: transparent;
}
.common-table.--th-width_pc135_sp105 {}
.common-table.--th-width_135 {}
.common-table.--th-width_120 {}
.common-table.--th-width_120_110 {}
.common-table.--facilities-other {}
.common-table.--th-width_pc120_sp135 {}
.common-table__tr {
    box-sizing: border-box;
    display: flex;
    gap: 1px;
}
.common-table__tr + .common-table__tr {
    margin-top: 1px;
}
.common-table__th {
    box-sizing: border-box;
    display: block;
    padding: 2rem;
    text-align: left;
    font-size: 1.5rem;
    font-weight: 500;
    line-height: 2;
    letter-spacing: 0;
    color: #fff;
    background-color: #333333;
}
.common-table.--th-width_135 .common-table__th {
    width: 13.5rem;
}
.common-table.--th-width_pc135_sp110 .common-table__th {
    width: 13.5rem;
}
.common-table.--th-width_pc135_sp105 .common-table__th {
    width: 13.5rem;
}
.common-table.--th-width_120 .common-table__th {
    width: 12rem;
}
.common-table.--th-width_120_110 .common-table__th {
    width: 12rem;
}
.common-table.--th-width_pc120_sp110 .common-table__th {
    width: 12rem;
}
.common-table.--facilities-other .common-table__th {
    width: 12rem;
}
.common-table.--th-width_pc120_sp135 .common-table__th {
    width: 12rem;
}
.common-table.--th-width_85 .common-table__th {
    width: 8.5rem;
}
.common-table.--th-width_80 .common-table__th {
    width: 8rem;
}
.common-table__td {
    box-sizing: border-box;
    display: block;
    width: calc(100% - 1px);
    padding: 2rem;
    font-size: 1.5rem;
    line-height: 2;
    letter-spacing: 0;
    background: #292929;
}
.common-table.--th-width_135 .common-table__td {
    width: calc(100% - 13.5rem - 1px);
}
.common-table.--th-width_pc135_sp110 .common-table__td {
    width: calc(100% - 13.5rem - 1px);
}
.common-table.--th-width_pc135_sp105 .common-table__td {
    width: calc(100% - 13.5rem - 1px);
}
.common-table.--th-width_120 .common-table__td {
    width: calc(100% - 12rem - 1px);
}
.common-table.--th-width_pc120_sp135 .common-table__td {
    width: calc(100% - 12rem - 1px);
}
.common-table.--th-width_120_110 .common-table__td {
    width: calc(100% - 12rem - 1px);
}
.common-table.--th-width_pc120_sp110 .common-table__td {
    width: calc(100% - 12rem - 1px);
}
.common-table.--facilities-other .common-table__td {
    width: calc(100% - 12rem - 1px);
}
.common-table.--th-width_85 .common-table__td {
    width: calc(100% - 8.5rem - 1px);
}
.common-table.--th-width_80 .common-table__td {
    width: calc(100% - 8rem - 1px);
}
/* ----- common-table responsive (1000) ----- */
@media screen and (max-width: 1000px) {
    .common-table {
        border-radius: 1rem;
    }
    .common-table__th {
        padding: 1.5rem;
    }
    .common-table.--th-width_135 .common-table__th {
        width: 11rem;
    }
    .common-table.--th-width_pc135_sp110 .common-table__th {
        width: 11rem;
    }
    .common-table.--th-width_pc135_sp105 .common-table__th {
        width: 10.5rem;
    }
    .common-table.--th-width_120 .common-table__th {
        width: 13.5rem;
    }
    .common-table.--th-width_120_110 .common-table__th {
        width: 11rem;
    }
    .common-table.--th-width_pc120_sp110 .common-table__th {
        width: 11rem;
    }
    .common-table.--facilities-other .common-table__th {
        width: 10rem;
    }
    .common-table.---th-width_pc120_sp135 .common-table__th {
        width: 13.5rem;
    }
    .common-table.--th-width_85 .common-table__th {
        width: 8.5rem;
    }
    .common-table.--th-width_80 .common-table__th {
        width: 7rem;
    }
    .common-table__td {
        padding: 1.5rem;
    }
    .common-table.--th-width_135 .common-table__td {
        width: calc(100% - 11rem - 1px);
    }
    .common-table.--th-width_pc135_sp110 .common-table__td {
        width: calc(100% - 11rem - 1px);
    }
    .common-table.--th-width_pc135_sp105 .common-table__td {
        width: calc(100% - 10.5rem - 1px);
    }
    .common-table.--th-width_120 .common-table__td {
        width: 13.5rem;
        width: calc(100% - 13.5rem - 1px);
    }
    .common-table.--th-width_120_110 .common-table__td {
        width: calc(100% - 11rem - 1px);
    }
    .common-table.--th-width_pc120_sp110 .common-table__td {
        width: calc(100% - 11rem - 1px);
    }
    .common-table.--facilities-other .common-table__td {
        width: calc(100% - 10rem - 1px);
    }
    .common-table.---th-width_pc120_sp135 .common-table__td {
        width: 13.5rem;
        width: calc(100% - 13.5rem - 1px);
    }
    .common-table.--th-width_85 .common-table__td {
        width: calc(100% - 8.5rem - 1px);
    }
    .common-table.--th-width_80 .common-table__td {
        width: calc(100% - 7rem - 1px);
    }
}
/* ::::: End common-table ::::: */
/* ::::: common-rounded-square-button ::::: */
.common-rounded-square-button {}
.common-rounded-square-button.--gray {}
/* .common-rounded-square-button.--flex-center {
    display: flex;
    justify-content: center;
} */
.common-rounded-square-button.--flexible {
    width: 100%;
}
.common-rounded-square-button__link,
.common-rounded-square-button__text {
    box-sizing: border-box;
    pointer-events: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 22rem;
    min-width: 22rem;
    padding: 1.4rem 1rem 1.5rem;
	border: solid 1px #fff;
	font-size: 1.6rem;
    font-weight: 500;
    line-height: 1.2;
	color: #fff;
    opacity: 1;
    transition: opacity .3s;
}
.common-rounded-square-button.--flexible .common-rounded-square-button__link {
    width: 100%;
    min-width: unset;
}
.common-rounded-square-button.--gray .common-rounded-square-button__link {
    border: 1px solid #555555;
    background: #555555;
}
@media (hover: hover) {
    .common-rounded-square-button__link:hover {
        opacity: .7;
    }
}
/* ----- common-rounded-square-button responsive (1000) ----- */
@media screen and (max-width: 1000px) {
    .common-rounded-square-button {
        width: 100%;
    }
    .common-rounded-square-button__link,
    .common-rounded-square-button__text {
        width: 100%;
        min-width: 100%;
    }
}
/* ::::: End common-rounded-square-button ::::: */
/* ::::: common-pdf-underline-link ::::: */
.common-pdf-underline-link {
    position: relative;
    display: inline;
    padding-bottom: 0.4rem;
    border-bottom: 1px solid #fff;
    font-size: 1.5rem;
    line-height: 2;
    transition: opacity .3s;
}
@media (hover: hover) {
    .common-pdf-underline-link:hover {
        opacity: 0.7;
    }
}
/* ::::: End common-pdf-underline-link ::::: */

/* ::::: page-first-view-bg-media-type-block ::::: */
/* 第２階層の背景画像・動画のファーストビューで使用 */
.page-first-view-bg-media-type-block {
    overflow: hidden;
    position: relative;
    top: 0;
    left: 0;
    z-index: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    height: auto;
    min-height: 60rem;
    min-height: 62.5vw;
}
@media screen and (min-width: 1600px) {
    .page-first-view-bg-media-type-block {
        height: 62.5vw;
        min-height: unset;
        max-height: 1000px;
    }
}
.page-first-view-bg-media-type-block__title-and-text {
    position: relative;
    z-index: 1;
    width: 83%;
    max-width: 1300px;
    padding: 32rem 0 23rem;
    margin: 0 auto;
    text-align: center;
}
.page-first-view-bg-media-type-block__title {
    display: flex;
    flex-direction: column;
    align-items: center;
}
.page-first-view-bg-media-type-block__ja {
    font-size: 5rem;
    letter-spacing: 0.05em;
    line-height: 1;
}
.page-first-view-bg-media-type-block__ja.-en {
    font-weight: 400;
    letter-spacing: 0.2em;
}
.page-first-view-bg-media-type-block__en {
    margin-top: 3rem;
    font-size: 2.2rem;
    letter-spacing: 0.2em;
    line-height: 1;
}
.page-first-view-bg-media-type-block__text-wrap {
    margin: 5rem 0 0;
}
.page-first-view-bg-media-type-block__bgi,
.page-first-view-bg-media-type-block__bgv {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 0;
    width: 100%;
    height: 100%;
}
.page-first-view-bg-media-type-block__bgi > .pc {
    display: block !important;
}
.page-first-view-bg-media-type-block__bgi > .sp {
    display: none !important;
}
/* ----- page-first-view-bg-media-type-block responsive (1000) ----- */
@media screen and (max-width: 1000px) {
    .page-first-view-bg-media-type-block {}
    .page-first-view-bg-media-type-block__title-and-text {
        width: 89%;
        padding: 14rem 0 12.5rem;
    }
    .page-first-view-bg-media-type-block__ja {
        font-size: 4rem;
    }
    .page-first-view-bg-media-type-block__en {
        margin-top: 3rem;
        font-size: 1.8rem;
    }
    .page-first-view-bg-media-type-block__text-wrap {
        margin: 3rem 0 0;
    }
    .page-first-view-bg-media-type-block__bgi > .pc {
        display: block !important;
    }
    .page-first-view-bg-media-type-block__bgi > .sp {
        display: none !important;
    }
}
/* ----- page-first-view-bg-media-type-block responsive (600) ----- */
@media screen and (max-width: 600px) {
    .page-first-view-bg-media-type-block {
        min-height: 166vw;
    }
    .page-first-view-bg-media-type-block__title-and-text {
        width: 89%;
        padding: 14rem 0 12.5rem;
    }
    .page-first-view-bg-media-type-block__ja {
        font-size: 4rem;
    }
    .page-first-view-bg-media-type-block__en {
        margin-top: 3rem;
        font-size: 1.8rem;
    }
    .page-first-view-bg-media-type-block__text-wrap {
        margin: 3rem 0 0;
    }
    .page-first-view-bg-media-type-block__bgi > .pc {
        display: none !important;
    }
    .page-first-view-bg-media-type-block__bgi > .sp {
        display: block !important;
    }
}
/* ::::: End page-first-view-bg-media-type-block ::::: */
/* ::::: page-first-view-text-type-block ::::: */
/* 第２階層で、背景なしのテキストタイプのファーストビューで使用 */
.page-first-view-text-type-block {
    padding: 22rem 5% 6rem;
}
.page-first-view-text-type-block__title {
    display: flex;
    flex-direction: column;
    align-items: center;
}
.page-first-view-text-type-block__ja {
    display: block;
    font-size: 5rem;
    letter-spacing: 0.05em;
    line-height: 1.3;
}
.page-first-view-text-type-block__ja.-en {
    font-weight: 400;
    letter-spacing: 0.2em;
}
.page-first-view-text-type-block__en {
    display: block;
    margin-top: 2rem;
    font-size: 2.2rem;
    line-height: 1.5;
}
/* ----- page-first-view-text-type-block responsive ----- */
@media screen and (max-width: 1000px) {
    .page-first-view-text-type-block {
        padding: 17rem 4% 3.8rem;
    }
    .page-first-view-text-type-block__ja {
        font-size: 3.6rem;
    }
    .page-first-view-text-type-block__en {
        margin-top: 1.5rem;
        font-size: 1.8rem;
    }
}
/* ::::: End page-first-view-text-type-block ::::: */
/* ::::: common-scroll-down ::::: */
.common-scroll-down {
    position: absolute;
    top: 50%;
    right: 3rem;
    z-index: 99;
    transform: translate(0, -50%);
    display: inline-block;
}
.common-scroll-down.--pc-only {}
.common-scroll-down__link {
    cursor: pointer;
    display: block;
}
.common-scroll-down__text {
    display: inline-block;
    font-size: 1.3rem;
    margin-right: 1.2rem;
}
.common-scroll-down__bar {
    position: relative;
    display: inline-block;
    width: 1px;
    height: 16rem;
}
.common-scroll-down__bar::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
    display: block;
    width: 1px;
    height: 100%;
    background-color: #fff;
    animation: scroll 2s infinite;
}
.common-scroll-down__bar::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    width: 1px;
    height: 100%;
    background-color: #ccc;
    opacity: .3;
}
/* 線のアニメーション */
@keyframes scroll {
    0% {
        transform: scale(1, 0);
        transform-origin: 0 0;
    }
    50% {
        transform: scale(1, 1);
        transform-origin: 0 0;
    }
    51% {
        transform: scale(1, 1);
        transform-origin: 0 100%;
    }
    100% {
        transform: scale(1, 0);
        transform-origin: 0 100%;
    }
}
#anchor-point-of-common-scroll-down {
    /* スムーススクロールの停止位置調整 */
    padding-top: 9.5rem;
    margin-top: -9.5rem;
}
/* ----- responsive (1000) ----- */
@media screen and (max-width: 1000px) {
    .common-scroll-down.--pc-only {
        display: none;
    }
    #anchor-point-of-common-scroll-down {
        /* スムーススクロールの停止位置調整 */
        padding-top: 7.5rem;
        margin-top: -7.5rem;
    }
}
/* ::::: End common-scroll-down ::::: */
/* ::::: common-section-title-block ::::: */
.common-section-title-block {
    position: relative;
    margin-bottom: 3.3rem;
}
.common-section-title-block__title {
    position: relative;
    z-index: 1;
    font-size: 3rem;
    font-weight: 500;
    line-height: 1.75;
    letter-spacing: 0;
}
.common-section-title-block__title::after {
    content: "";
    position: absolute;
    top: -3rem;
    left: -4rem;
    display: block;
    width: 13rem;
    height: 13rem;
    background: url('/assets/images/common/title_logo.png') no-repeat center center;
    background-size: cover;
}
/* ----- common-section-title-block responsive (1000) ----- */
@media screen and (max-width: 1000px) {
    .common-section-title-block {
        margin-bottom: 2rem;
    }
    .common-section-title-block__title {
        font-size: 2.8rem;
        line-height: 1.5;
    }
}
/* ::::: End common-section-title-block ::::: */
/* ::::: cards ::::: */
.cards {}
.cards.--in-topics-and-blog-of-home {}
.cards.--2columns {}
.cards.--2columns-in-access {}
.cards.--3columns-in-access {}
.cards.--3columns {}
.cards.--4columns {}
.cards__list {
    display: flex;
    flex-wrap: wrap;
}
.cards.--in-topics-and-blog-of-home .cards__list {
    gap: 4rem 4rem;
}
.cards.--2columns .cards__list {
    gap: 5rem 4rem;
}
.cards.--2columns-in-access .cards__list {
    gap: 7rem 5.5%;
}
.cards.--3columns .cards__list {
    gap: 5rem 4rem;
}
.cards.--3columns-in-access .cards__list {
    gap: 7rem 5.5%;
}
.cards.--4columns .cards__list {
    gap: 5rem 3rem;
}
.cards.--in-topics-and-blog-of-home .cards__item {
    width: calc((100% - 4rem) / 2);
}
.cards.--2columns .cards__item {
    width: calc((100% - 4rem) / 2);
}
.cards.--2columns-in-access .cards__item {
    width: calc((100% - 5.5%) / 2);
}
.cards.--3columns .cards__item {
    width: calc((100% - 8rem) / 3);
}
.cards.--3columns-in-access .cards__item {
    width: calc((100% - 11%) / 3);
}
.cards.--4columns .cards__item {
    width: calc((100% - 9rem) / 4);
}
/* ----- cards responsive (1000) ----- */
@media screen and (max-width: 1000px) {
    .cards {}
    .cards.--in-topics-and-blog-of-home {}
    .cards.--2columns {}
    .cards.--3columns {}
    .cards.--4columns {}
    .cards.--in-topics-and-blog-of-home {} .cards__list {
        gap: 5rem 4rem;
    }
    .cards.--2columns .cards__list {
        gap: 5rem 4rem;
    }
    .cards.--2columns-in-access .cards__list {
        gap: 5rem 5.5%;
    }
    .cards.--3columns-in-access .cards__list {
        gap: 3rem 5.5%;
    }
    .cards.--3columns .cards__list {
        gap: 5rem 4rem;
    }
    .cards.--4columns .cards__list {
        gap: 5rem 4rem;
    }
    .cards.--3columns .cards__item {
        width: calc((100% - 4rem) / 2);
    }
    .cards.--3columns-in-access .cards__item {
        width: calc((100% - 5.5%) / 2);
    }
    .cards.--4columns .cards__item {
        width: calc((100% - 4rem) / 2);
    }
}
/* ----- cards responsive (850) ----- */
@media screen and (max-width: 850px){
    .cards {}
    .cards.--in-topics-and-blog-of-home {}
    .cards.--2columns {}
    .cards.--3columns {}
    .cards.--4columns {}
    .cards.--in-topics-and-blog-of-home .cards__item {
        width: 100%;
    }
    .cards.--2columns .cards__item {
        width: 100%;
    }
    .cards.--2columns-in-access .cards__item {
        width: 100%;
    }
    .cards.--3columns-in-access .cards__item {
        width: 100%;
    }
    .cards.--3columns .cards__item {
        width: 100%;
    }
    .cards.--4columns .cards__item {
        width: 100%;
    }
}
/* ::::: End cards ::::: */
/* ::::: card ::::: */
.card {
    position: relative;
}
a.card {}
a.card.--mark {}
.cards.--2columns .card {}
.cards.--2columns a.card {}
.cards.--3columns .card {}
.cards.--3columns a.card {}
.cards.--4columns .card {}
.cards.--4columns a.card {}
a.card.--mark::after {
    content: "おすすめ";
    position: absolute;
    right: inherit;
    background: rgba(0, 0, 0, .4);
    border-radius: 50%;
    text-align: center;
    height: 7rem;
    line-height: 7rem;
    width: 7rem;
    border: 2px dashed #fff;
    font-weight: bold;
    font-size: 1.3rem;
    top: -2rem;
    right: -2rem;
}
.card__figure {
    overflow: hidden;
    aspect-ratio: 3/2;
}
.card__figure > .img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: opacity .3s;
}
.card__title {
    font-size: 2.5rem;
    line-height: 1.8;
    padding: 1.8rem 0 0;
}
.cards.--4columns .card .card__title {
    padding: 2.5rem 0 0;
    font-size: 1.5rem;
    line-height: 2;
}
.cards.--4columns a.card .card__title {
    padding: 2.5rem 0 0;
    font-size: 1.5rem;
    line-height: 2;
}
.card__x-large-title {
    padding: 2.5rem 0 0;
    font-size: 2.5rem;
    font-weight: 500;
    line-height: 1.8;
}
.card__large-title {
    padding: 2.5rem 0 0;
    font-size: 2rem;
    font-weight: 500;
    line-height: 1.75;
}
.card__small-title {
    padding: 2rem 0 0;
    font-size: 1.5rem;
    font-weight: 500;
    line-height: 2;
}
.card__text {
    padding: 1.2rem 0 0;
    font-size: 1.5rem;
    line-height: 2;
}
a.card .card__figure,
a.card .card__title,
a.card .card__text {
    opacity: 1;
    transition: opacity .3s;
}
a.card:hover .card__figure,
a.card:hover .card__title,
a.card:hover .card__text {
    opacity: 0.7;
}
.card__warn,
.card__date {
    padding: 1.2rem 0 0;
    font-size: 1.3rem;
    line-height: 2;
    color: #999;
}
.card__small-text {
    padding: 1.8rem 0 0;
    font-size: 1.3rem;
    line-height: 2;
    color: #999;
}
.card__table-wrap {
    padding: 4rem 0 0;
}
.card__buttons-wrap {
    padding: 4rem 0 0;
}

/* ----- card responsive (1000) ----- */
@media screen and (max-width: 1000px) {
    .card {}
    a.card {}
    .cards.--2columns .card {}
    .cards.--2columns a.card {}
    .cards.--3columns .card {}
    .cards.--3columns a.card {}
    .cards.--4columns .card {}
    .cards.--4columns a.card {}
    .card__title {}
    .cards.--in-topics-and-blog-of-home .card__title {
        padding: 2.5rem 0 0;
        font-size: 1.8rem;
        line-height: 1.8;
    }
    .card__text {
        padding: 1.2rem 0 0;
    }
    .card__table-wrap {
        padding: 2rem 0 0;
    }
}
/* ::::: End card ::::: */

/* ::::: common-rooms-cards ::::: */
.common-rooms-cards {}
.common-rooms-cards__list {
    display: flex;
    flex-wrap: wrap;
    gap: 6rem;
}
.common-rooms-cards__item {
    width: calc((100% - 6rem) / 2);
}
/* ----- common-rooms-cards responsive (850) ----- */
@media screen and (max-width: 850px){
    .common-rooms-cards {}
    .common-rooms-cards__list {
        gap: 5rem;
    }
    .common-rooms-cards__item {
        width: 100%;
    }
}
/* ::::: End common-rooms-cards ::::: */
/* ::::: common-rooms-card ::::: */
.common-rooms-card {}
.common-rooms-card__figure {
    overflow: hidden;
    aspect-ratio: 3/2;
}
.common-rooms-card__link:hover .common-rooms-card__figure {}
.common-rooms-card__figure > .img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: opacity .3s;
}
.common-rooms-card__title {
    padding: 2.5rem 0 0;
    font-size: 2.5rem;
    font-weight: 500;
    line-height: 1.8;
}
.common-rooms-card__gray-text {
    padding: 1.2rem 0 0;
    font-size: 1.5rem;
    line-height: 2;
    color: #888;
}
.common-rooms-card__text {
    padding: 2rem 0 0;
    font-size: 1.5rem;
    line-height: 2;
}
.common-rooms-card__link .common-rooms-card__title,
.common-rooms-card__link .common-rooms-card__gray-text,
.common-rooms-card__link .common-rooms-card__text {
    opacity: 1;
    transition: opacity .3s;
}
@media (hover: hover) {
    .common-rooms-card__link:hover .common-rooms-card__title,
    .common-rooms-card__link:hover .common-rooms-card__gray-text,
    .common-rooms-card__link:hover .common-rooms-card__text {
        opacity: 0.7;
    }
}
.common-rooms-card__button-links-wrap {
    display: flex;
    gap: 2rem 3rem;
    padding-top: 3.5rem;
}
/* ----- common-rooms-card responsive (1000) ----- */
@media screen and (max-width: 1000px) {
    .common-rooms-card {}
    .common-rooms-card__text {
        padding: 2.5rem 0 0;
    }
    .common-rooms-card__button-links-wrap {
        flex-direction: column;
    }
}
/* ::::: End common-rooms-card ::::: */


/* ::::: common-category ::::: */
.common-category {
    display: flex;
    flex-direction: column;
    gap: 4rem;
    margin-bottom: 8.5rem;
}
.common-category__list {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 3.5rem;
    width: 90%;
    max-width: 1080px;
    margin: 0 auto;
}
.common-category__link {
    font-size: 1.8rem;
    color: #777777;
    position: relative;
    padding-bottom: 0.8rem;
    cursor: pointer;
    transition: .3s;
    display: inline;
}
.common-category__link:hover {
    opacity: 0.7;
}
.common-category__link.-current {
    border-bottom:1px solid #fff;
    color: #fff;
}
.common-category__link.-current::before {
    content: "";
    position: absolute;
    left: 50%;
    width: 0;
    height: 0;
    top: 100%;
    border: 6px solid transparent;
    border-top-color: #fff;
    margin-left: -6px;
}
.common-category__link.-current::after {
    content: "";
    position: absolute;
    left: 50%;
    width: 0;
    height: 0;
    top: 100%;
    border: 4px solid transparent;
    border-top-color: #222222;
    margin-left: -4px;
}
/* ----- common-category responsive (1000) ----- */
@media screen and (max-width: 1000px) {
    .common-category__list {
        gap: 3rem;
    }
    .common-category__link {
        font-size: 1.6rem;
        padding-bottom: 0.5rem;
    }
}
/* ::::: common-category end ::::: */
/* ::::: pagination ::::: */
.pagination {
    display: flex;
    flex-wrap: wrap;
    justify-content: left;
    gap: 2rem 3.4rem;
    font-size: 1.8rem;
    font-weight: 500;
    letter-spacing: 0.05em;
}
.page-numbers {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 0.5rem 1.2rem;
    border-bottom: 1px solid transparent;
    color: #999999;
    opacity: 1;
    transition: opacity .3s, background-color .3s;
}
span.page-numbers {
    border-bottom: 1px solid #FFFFFF;
    color: #fff;
    opacity: 1;
}
a.page-numbers:hover {
    opacity: 0.7;
}
/* ----- pagination responsive (1000) ----- */
@media screen and (max-width: 1000px) {
    .pagination {
        gap: 2rem 2.5rem;
    }
}
/* ::::: End pagination ::::: */

/* :::::::::::::::::::: c-bgMediaSecBlock :::::::::::::::::::: */
.c-bgMediaSecBlock {}
.c-bgMediaSecBlock__link,
.c-bgMediaSecBlock__sec {
    overflow: hidden;
    position: relative;
    top: 0;
    left: 0;
    z-index: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: start;
    width: 100%;
    height: 50vw;
    min-height: 600px;
}
.c-bgMediaSecBlock__link::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    display: block;
    width: 100%;
    height: 100%;
    background-color: rgba(68, 68, 68, 0);
    transition: background-color .3s;
}
.c-bgMediaSecBlock__link:hover::before {
    background-color: rgba(68, 68, 68, 0.5);
}
.c-bgMediaSecBlock__title {
    position: relative;
    z-index: 1;
    width: 83%;
    max-width: 1300px;
    margin: 0 auto;
    text-align: left;
    font-size: var(--homeSecTitle-fz);
    font-weight: var(--homeSecTitle-fw);
    line-height: var(--homeSecTitle-lh);
    letter-spacing: var(--homeSecTitle-ls);
    color: #fff;
}
.c-bgMediaSecBlock__title.logo_block img{
	object-position: center center;
}
.c-bgMediaSecBlock__text {
    position: relative;
    z-index: 1;
    margin: 4.2rem 0 0;
    text-align: left;
    font-size: 1.5rem;
    font-weight: 99;
    line-height: 2;
    letter-spacing: 0.05em;
    color: #fff;
}
.c-bgMediaSecBlock__linkButtonWrap{
    position: relative;
    z-index: 1;
    max-width: 1300px;
    margin: 5rem auto 0;
    text-align: left;
}
.c-bgMediaSecBlock.textAlignC .c-bgMediaSecBlock__title{
    text-align: center;
}
.c-bgMediaSecBlock.textAlignC .c-bgMediaSecBlock__linkButtonWrap{
    text-align: center;
}
.mc-roundedSquareButtonBlock{
    margin-left: 0;
}
.c-bgMediaSecBlock__linkButtonWrap.block_center .c-roundedSquareButtonBlock__link{
	margin: 0 auto;
}
.c-bgMediaSecBlock__bgi {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 0;
    transform: scale(1.08);
    width: 100%;
    height: 100%;
    transition: transform 0.4s;
}
.c-bgMediaSecBlock__bgv {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 0;
    width: 100%;
    height: 100%;
    transition: transform 0.4s;
}
.c-bgMediaSecBlock__bgi > .img {
    transform: scale(1);
    transition: transform 0.4s;
}
.c-bgMediaSecBlock__sec .c-bgMediaSecBlock__bgi > .img {
    transform: scale(1);
}
.c-bgMediaSecBlock__link:hover .c-bgMediaSecBlock__bgi > .img {
    transform: scale(1.05);
}
.bgMediaSecBlock__title_wp{
    position: relative;
    z-index: 99;
    text-align: center;
    margin: 0 auto;
}
.c-bgMediaSecBlock__title{
    text-align: center;
}
.bgMediaSecBlock__title_wp p{
    font-size: 1.5rem;
    line-height: 2;
    margin-top: 6rem;
}
/* ----- bgiSec responsive (1000) ----- */
@media screen and (max-width: 1000px) {
    .c-bgMediaSecBlock {}
    .c-bgMediaSecBlock__title {
        width: 89%;
        font-size: 3.5rem;
        line-height: 1.6;
    }
    .c-bgMediaSecBlock__text {
        margin: 3rem auto 0;
    }
    .c-bgMediaSecBlock__linkButtonWrap {
        margin: 4rem auto 0;
    }
}
/* ----- bgiSec responsive (850) ----- */
@media screen and (max-width: 850px) {
    .c-bgMediaSecBlock {}
    .c-bgMediaSecBlock.--lower .c-bgMediaSecBlock__link {
        min-height: 100vh;
        max-height: 850px;
    }
    .c-bgMediaSecBlock__bgi img.pc-tab {
        display: none;
    }
    .c-bgMediaSecBlock__bgi .sp {
        display: block;
    }
    .c-bgMediaSecBlock__title.logo_block {
        width: 200px;
        height: 185px;
    }
    .c-bgMediaSecBlock__linkButtonWrap {
        margin-top: 4rem;
    }
    .c-bgMediaSecBlock .c-bgMediaSecBlock__linkButtonWrap {
        margin-top: 5rem;
    }
}
/* :::::::::::::::::::: End common module :::::::::::::::::::: */