
/*---------------------
CONTENSTS
--------------------- */
/* sub section */
.subPageSection{
    position: relative;
    min-height: 100vh;
}
.subPageSection__inner{
    width: min(calc(1220/ var(--vw-min) * 100vw),1220px);
    padding: min(calc(120/ var(--vw-min) * 100vw), 120px) min(calc(80/ var(--vw-min) * 100vw), 80px) min(calc(155/ var(--vw-min) * 100vw), 155px);
    margin: 0 auto;
}
@media screen and (max-width:767px){
    .subPageSection__inner{
        width: 100%;
        padding:calc(170/ var(--vw-min) * 100vw) 0 calc(300 / var(--vw-min) * 100vw);
        margin: 0 auto;
    }
    .subPageContents{
        padding:0 calc(40/ var(--vw-min) * 100vw);
    }
}
/*---------------------
 MOVIE
--------------------- */
/* MOVIE > ttl */
.movie .subPage__ttl__jp{
    position: absolute;
    bottom: 0;
    width: 100%;
    height: min(calc(20/ var(--vw-min) * 100vw), 20px);
    -webkit-mask: url(../img/ttl/ttl_movie_jp.svg) no-repeat center / contain;
    mask: url(../img/ttl/ttl_movie_jp.svg) no-repeat center / contain;
    background-color: #462f22;
}
@media screen and (max-width:767px){
    .movie .subPage__ttl__jp{
        height:calc(32/ var(--vw-min) * 100vw);
    }
}

/* ttl deco */
.ttl__deco{
    position: absolute;
}
.ttl__deco._item1{
    width: min(calc(101/ var(--vw-min) * 100vw), 101px);
    height: min(calc(149/ var(--vw-min) * 100vw), 149px);
    display: block;
    background: url(../img/news/ttl_deco1.png) no-repeat center center / contain;
    left: max(calc(-14/ var(--vw-min) * 100vw), -14px);
    top: max(calc(-40/ var(--vw-min) * 100vw), -40px);
}
.ttl__deco._item2{
    width: min(calc(93/ var(--vw-min) * 100vw), 93px);
    height: min(calc(144/ var(--vw-min) * 100vw), 144px);
    display: block;
    background: url(../img/news/ttl_deco2.png) no-repeat center center / contain;
    right: min(calc(10/ var(--vw-min) * 100vw), 10px);
    top: max(calc(-40/ var(--vw-min) * 100vw), -40px);
}
@media screen and (max-width:767px){
    .ttl__deco._item1{
        width: calc(102/ var(--vw-min) * 100vw);
        height: calc(150/ var(--vw-min) * 100vw);
        left: calc(50/ var(--vw-min) * 100vw);
        top: calc(-24/ var(--vw-min) * 100vw);
    }
    .ttl__deco._item2{
       display: none;
    }
}

/* linkLists */
.linkLists {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: min(calc(16 / var(--vw-min) * 100vw), 16px);
    margin-bottom: min(calc(54 / var(--vw-min) * 100vw), 54px);
}
.linkItem {
    width: min(calc(260 / var(--vw-min) * 100vw), 260px);
    height: min(calc(56 / var(--vw-min) * 100vw), 56px);
    position: relative;
}
@media screen and (max-width:767px){
    .linkItem {
        width: calc((100% - calc(16 / var(--vw-min) * 100vw)) / 2);
        height: calc(80 / var(--vw-min) * 100vw);
    }
}
.linkItem__link {
    text-decoration: none;
    border-radius: min(calc(100 / var(--vw-min) * 100vw), 100px);
    background: linear-gradient(90deg, rgba(21, 116, 147, 1) 0%, rgba(57, 150, 115, 1) 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    position: relative;
    overflow: hidden;
}
.linkItem__link::after {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: inherit;
    background: #4393cd;
    opacity: 0;
    transition: opacity .3s ease;
    pointer-events: none;
    z-index: 0;
}
.linkItem__link.is-active::after {
    opacity: 1;
}
@media screen and (hover: hover) and (pointer: fine) {
    .linkItem__link:hover::after {
        opacity: 1;
    }
}
.linkItem__txt {
    position: relative;
    z-index: 1;
    color: #fff;
    font-size: min(calc(24 / var(--vw-min) * 100vw), 24px);
    font-weight: 700;
    font-family: var(--f-en);
    letter-spacing: 0.06em;
    line-height: 1;
}
@media screen and (max-width:767px){
    .linkItem__txt {
        font-size: calc(28 / var(--vw-min) * 100vw);
    }
}
.linkItem__link:before {
    content: "";
    background-color: #fff;
    -webkit-mask: url(../img/common/icon/icon_nav_hone2.png) no-repeat center / contain;
    mask: url(../img/common/icon/icon_nav_hone2.png) no-repeat center / contain;
    width: min(calc(21 / var(--vw-min) * 100vw), 21px);
    height: min(calc(22 / var(--vw-min) * 100vw), 22px);
    margin: auto;
    position: absolute;
    top: 0;
    right: min(calc(30 / var(--vw-min) * 100vw), 30px);
    bottom: 0;
    z-index: 1;
}
@media screen and (hover: hover) and (pointer: fine) {
    .linkItem__link:before {
        transition: transform .3s ease;
    }
    .linkItem__link:hover:before {
        transform: translateY(10%);
    }
}

/* movieLists */
.movieLists {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: min(calc(32 / var(--vw-min) * 100vw), 32px);
}
@media screen and (max-width:767px){
    .movieLists {
        grid-template-columns: repeat(1, 1fr);
    }
}
.movieLists__item > a {
    display: block;
    position: relative;
    text-decoration: none;
}
.movieLists__img {
    background-color: #fff;
    box-shadow: #8b6c5a 0px 0px min(calc(12/ var(--vw-min) * 100vw), 12px);
    width: 100%;
    overflow: hidden;
    padding-top: 56.25%;
    position: relative;
}
.movieLists__img::after{
    content: "";
    display: block;
    margin: auto;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: calc(100% - 4px);
    height: calc(100% - 4px);
    border: 2px solid #916e49;
    z-index: 4;
    box-sizing: border-box;
}
.movieLists__img::before{
    content: "";
    display: block;
    margin: auto;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: calc(100% - 10px);
    height: calc(100% - 10px);
    border: 1px solid #916e49;
    z-index: 4;
    box-sizing: border-box;
}
.movieLists__img img {
    margin: auto;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: calc(100% - 10px);
    height: calc(100% - 10px);
    object-fit: cover;
    z-index: 1;
}
@media screen and (hover: hover) and (pointer: fine) {
    .movieLists__img img {
        transition: transform .3s ease;
    }
    .movieLists__item:hover .movieLists__img img {
        transform: scale(1.05);
    }
}
.movieLists__playIcon {
    width: min(calc(64 / var(--vw-min) * 100vw), 64px);
    height: min(calc(64 / var(--vw-min) * 100vw), 64px);
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    border: 1px solid #fff;
    border-radius: 50%;
    z-index: 3;
}
.movieLists__playIcon::before {
    content: "";
    background-color: #fff;
    -webkit-mask: url(../img/common/icon/icon_arrow.svg) no-repeat center / contain;
    mask: url(../img/common/icon/icon_arrow.svg) no-repeat center / contain;
    width: min(calc(18 / var(--vw-min) * 100vw), 18px);
    height: min(calc(24 / var(--vw-min) * 100vw), 24px);
    margin: auto;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 7%;
}
@media screen and (max-width:767px){
    .movieLists__playIcon {
        width: calc(96 / var(--vw-min) * 100vw);
        height: calc(96 / var(--vw-min) * 100vw);
    }
    .movieLists__playIcon::before {
        width: calc(27 / var(--vw-min) * 100vw);
        height: calc(34 / var(--vw-min) * 100vw);
    }
}
.movieLists__cover {
    width: calc(100% - 10px);
    height: calc(100% - 10px);
    margin: auto;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-color: rgba(0, 0, 0, 0.4);
    z-index:2;
}
@media screen and (hover: hover) and (pointer: fine) {
    .movieLists__cover {
        transition: opacity .3s ease;
    }
    .movieLists__item:hover .movieLists__cover {
        opacity: 0;
    }
}
.movieLists__ttl {
    display: block;
    font-size: min(calc(16 / var(--vw-min) * 100vw), 16px);
    letter-spacing: 0.06em;
    margin-top: 1em;
}
@media screen and (max-width:767px){
    .movieLists__ttl {
        font-size: calc(24 / var(--vw-min) * 100vw);
    }
}