:root{
    --gaPurple: #51237C;
    --gaYellow: #FFC553;
    --gaWhite: #cfcfcf;
    --gaBlack: #111111;
    --gaGray: #7f7f7f;

    --font-badge: 500 10rem/1.5 'Roboto', sans-serif;
    --font-std: 300 12rem/1.5 'Roboto', sans-serif;
    --font-title: 700 46rem/1.5 'Roboto', sans-serif;
    --font-h1: 500 20rem/1.5 'Roboto', sans-serif;
    --font-h2: 400 18rem/1.5 'Roboto Condensed', sans-serif;
    --font-h2-large: 400 22rem/1.5 'Roboto Condensed', sans-serif;
    --font-h3: 400 16rem/1.5 'Roboto', sans-serif;
    --font-h3-bold: 500 16rem/1.5 'Roboto', sans-serif;
    --font-date: 300 12rem/1.5 'Roboto Condensed', sans-serif;
    --font-theater: 300 14rem/1.5 'Roboto', sans-serif;
    --font-time: 300 12rem/1.5 'Roboto Condensed', sans-serif;
    --font-button: 400 12rem/1.5 'Roboto Condensed', sans-serif;
    --font-tab: 400 14rem/1.5 'Roboto Condensed', sans-serif;
    --font-caption: 300 12rem/1.5 'Roboto Condensed', sans-serif;
}

html {
    font-size: calc(100vw / 375);
    color: var(--gaBlack);
}

body {
    line-height: 1.5;
    margin: 0;
}

a{
    cursor: pointer;
}
button{
    cursor: pointer;
}

@media screen and (min-width: 600px) {
    :root{
        --font-title: 700 80rem/1.5 'Roboto', sans-serif;
        --font-h1: 500 24rem/1.5 'Roboto', sans-serif;
        --font-h3: 500 18rem/1.5 'Roboto', sans-serif;
        --font-h3-bold: 500 18rem/1.5 'Roboto', sans-serif;
        --font-badge: 500 12rem/1.5 'Roboto', sans-serif;
        --font-std: 300 14rem/1.5 'Roboto', sans-serif;
        --font-date: 300 14rem/1.5 'Roboto Condensed', sans-serif;
        --font-caption: 300 14rem/1.5 'Roboto Condensed', sans-serif;
        --font-theater: 400 14rem/1.5 'Roboto', sans-serif;
        --font-time: 300 16rem/1.5 'Roboto Condensed', sans-serif;
        --font-button: 400 14rem/1.5 'Roboto Condensed', sans-serif;
    }
    
    html {
        font-size: 1px;
    }
    
    .page{
        min-width: 1100rem;
    }
}

/* 汎用パーツ */
.badge{
    font: var(--font-badge);
    color: #FFFFFF;
    background-color: var(--gaBlack);
    width: fit-content;
    padding: 4rem 6rem 3rem;
    border-radius: 4rem;
    line-height: 100%;
}
.badge--premiere{
    background-image: linear-gradient(147deg, #1F3893 0%, #D3586E 50%, #EEBD5C 100%);
}
.badge-list{
    display: flex;
    width: fit-content;
    flex-wrap: wrap;
    flex-shrink: 0;
}
.badge-item{
    width: fit-content;
    margin-right: 6rem;
}
.badge-item:last-of-type{
    margin-right: 0;
}
.scroll-top__button{
    position: fixed;
    z-index: 2;
    bottom: 14vw;
    right: 5vw;
    transition: .5s all ease;
    opacity: 0;
    font: var(--font-button);
    display: flex;
    flex-direction: column;
    align-items: center;
    color: var(--gaBlack);
    justify-content: start;
}
.scroll-top__button--active{
    opacity: 1;
}
.scroll-top__button::before{
    content: "";
    display: block;
    width: 10rem;
    height: 26rem;
    background-image: url(../img/top-arrow-black.svg);
    background-size: contain;
    background-repeat: no-repeat;
    margin-bottom: 8rem;
    transition: .5s all ease;
}
@media screen and (min-width: 600px) {
    .scroll-top__button{
        bottom: 5vw;
        cursor: pointer;
    }
    .scroll-top__button:hover{
        background: linear-gradient(147deg, #1F3893 0%, #D3586E 50%, #EEBD5C 100%);
        color: transparent;
        background-clip: text;
        -webkit-background-clip: text;
    }
    .scroll-top__button:hover:before{
        background-image: url(../img/top-arrow-black_hover.svg);
    }
}

.modal__overlay{
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 10;
    background: rgb(0, 0, 0);
    opacity: 0.8;
}
.modal__overlay--active{
    display: block;
}
@media screen and (min-width: 600px) {
    .modal__overlay{
        display: none;
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        z-index: 10;
        background: rgb(0, 0, 0);
        opacity: 0.8;
    }
    .modal__overlay--active{
        display: block;
    }
}

/* languageモーダル */
.language-modal{
    background-color: #ffffff;
    padding: 30rem 16rem 20rem;
    position: fixed;
    z-index: 100;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 340rem;
}
.language-modal__text{
    font: var(--font-std);
    width: fit-content;
    margin: 0 auto 20rem;
}
.language-modal__button-wrapper{
    display: flex;
    align-items: center;
    width: fit-content;
    margin: 0 auto;
}
.language-modal__button{
    min-width: 100rem;
    max-width: 160rem;
    font: var(--font-button);
    margin-right: 16rem;
}
.language-modal__button:last-of-type{
    margin-right: 0;
}
@media screen and (min-width: 600px) {
    .language-modal{
        padding: 60rem 16rem 50rem;
        width: 580rem;
    }
    .language-modal__text{
        margin-bottom: 24rem;
    }
    .language-modal__button{
        min-width: 140rem;
        margin-bottom: 0;
        margin-right: 16rem;
    }
    .language-modal__button:last-of-type{
        margin-right: 0;
    }
}

/* ヘッダーバー */
.header{
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 100%;
    padding: 16rem;
    background-color: var(--gaYellow);
}
.header--top{
    position: absolute;
    background-color: transparent;
    z-index: 10; /* 動画より前面に表示するために追加 */
}
.header__title{
    max-width: 60%;
}
.header__title-img{
    display: block;
    width: 100%;
}
@media screen and (min-width: 600px) {
    .header{
        padding: 40rem;
    }
    .header__title{
        max-width: 240rem;
    }
    .header__title-img{
        display: block;
        width: 100%;
    }
}

.header__lang-list{
    width: fit-content;
    margin-left: auto;
    display: flex;
    padding: 10rem;
    height: 100%;
    /* margin-bottom: 10rem; */
}
.header__lang-item{
    display: flex;
    font-size: 12rem;
    justify-content: center;
    align-items: center;
    flex-shrink: 0;
    flex-grow: 0;
}
.header__lang-link{
    display: flex;
    font-size: 12rem;
    color: var(--gaPurple);
    width: 100%;
    height: 100%;
    flex-grow: 1;
    padding: 0 10rem;
    align-items: center;
    font-family: 'Roboto', sans-serif;
}
.header__lang-link--top{
    color: var(--gaWhite);
}
.header__lang-item::after{
    font-size: 12rem;
    content: "/";
    padding: 0 4rem;
}
.header__lang-item--top::after{
    color: var(--gaWhite);
}
.header__lang-item:last-of-type::after{
    content: none;
}
.header__lang-item--inactive{
    opacity: 0.5;
}
.header__lang-item--active .header__lang-link {
    pointer-events: none;
    cursor: default;
}
@media screen and (min-width: 600px) {
    .header{
        height: 68rem;
    }    
    .header__lang-item{
        font-size: 18rem;
    }
    .header__lang-link{
        font-size: 18rem;
        cursor: pointer;
    }
    .header__lang-item--inactive{
        transition: 0.3s all ease;
    }
    .header__lang-item--inactive:hover{
        opacity: 1;
    }
    .header__lang-item::after{
        font-size: 18rem;
        padding: 0 6rem;
    }
}

/* ヒーローエリア */
.hero{
    display: block;
    width: 100%;
    background-color: var(--gaYellow);
    padding: 0 0 30rem;
}
.hero__title{
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 0 20rem;
    margin-bottom: 10rem;
}
.hero__text-img{
    display: block;
    max-width: 260rem;
    width: 100%;
    padding: 8rem 15rem 15rem;
}
.hero__title-img{
    display: block;
    width: 100%;
}
.hero__img{
    display: block;
    width: 100%;
}
@media screen and (min-width: 600px) {
    .hero{
        display: flex;
        flex-direction: column;
        align-items: center;
        padding: 0;
    }
    .hero__title{
        max-width: 800rem;
        padding: 0 60rem;
    }
    .hero__img{
        /* max-width: 600rem; */
    }
    .hero__text-img{
        max-width: 450rem;
        padding: 12rem 16rem 30rem;
    }
}

.contents{
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 15rem 20rem 50rem;
}
.contents__detail{
    width: 100%;
    display: flex;
    flex-direction: column;
    padding: 30rem 0;
}
.contents__title{
    display: block;
    font: var(--font-h2);
    margin-bottom: 16rem;
}

@media screen and (min-width: 600px) {
    .contents{
        max-width: 1080rem;
        margin: 0 auto;
        padding: 50rem 40rem;
    }
    .contents__detail{
        flex-direction: row;
        padding: 40rem 24rem;
    }
    .contents__title{
        flex-shrink: 0;
        max-width: 220rem;
        width: 100%;
        margin-bottom: 0;
    }
}
/* News START */
.news__wrapper{
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
}
.news__list{
    display: block;
    width: 100%;
    border-bottom: 1px solid var(--gaGray);
}
.news__item{
    position: relative;
    border-top: 1rem solid var(--gaGray);
    text-align: justify;
    transition: 0.3s all ease;
}
.news__item::after{
    content: "→";
    line-height: 1;
    display: block;
    font-size: 16rem;
    position: absolute;
    right: 12rem;
    top: calc(50% - 8rem);
    transition: 0.3s all ease;
}
.news__link{
    display: block;
    padding: 12rem 44em 12rem 12rem;
}
.news__detail{
    display: flex;
    align-items: center;
    flex-wrap: wrap;
}
.news__detail-date{
    font: var(--font-date);
    color: var(--gaGray);
    margin-right: 8rem;
}
.news__item-title{
    font: var(--font-h3);
    color: var(--gaBlack);
    margin-bottom: 14rem;
}
@media screen and (min-width: 600px) {
    .news__wrapper{
        align-items: end;
    }
    .news__list{
        padding: 0;
    }
    .news__item{
        cursor: pointer;
    }
    .news__item:hover::after {
        right: 8rem;
    }
    .news__item-title,
    .news__detail {
        transition: opacity 0.3s ease;  /* スムーズなアニメーションのための遷移 */
    }    
    /* hover時のスタイル */
    .news__item:hover .news__item-title,
    .news__item:hover .news__detail {
        opacity: 0.5;
    }
    .news__detail-date{
        margin-right: 12rem;
    }    
}
/* wysiwyg スタイル */
.post__content > p{
    font: var(--font-std);
    line-height: 1.8;
    padding: 14rem 0;
}
.post__content > h2{
    font: var(--font-h2);
    font-weight: 500;
    padding: 24rem 0 12rem;
}
.post__content > h2:first-of-type{
    padding-top: 12rem;
}
.post__content > h3{
    font-weight: 500;
}
.post__content > br{
    display: none;
}
.post__content > a{
    display: block;
    color: var(--gaPurple);
    text-decoration: underline;
    transition: 0.3s all ease;
    padding: 12rem 0;
    width: fit-content;
}
.post__content > p > a{
    display: block;
    color: #D3586E;
    text-decoration: underline;
    transition: 0.3s all ease;
    width: fit-content;
}
.post__content > blockquote{
    display: block;
    background: #f5f5f5;
    padding: 20rem;
    border-radius: 6rem;
    font-size: 14rem;
    margin: 24rem 0;
}
.post__content > blockquote > p{
    font-size: 12rem;
    line-height: 1.8;
    color: var(--gaBlack);
    padding: 6rem 0;
}
.post__content > blockquote > h4{
    font-size: 14rem;
    line-height: 1.8;
    padding: 6rem 0;
}
@media screen and (min-width: 600px) {
    .post__content{
        padding: 20rem;
    }
    .post__content > h2{
        font-size: 18rem;
    }
    .post__content > h3{
        font-size: 16rem;
        padding: 32rem 0 6rem;
    }
    .post__content > p > a:hover{
        text-decoration: none;
    }
    .post__content > blockquote{
        margin: 32rem 0;
    }
}

/* Premiere Screening START */
.film-festival-info{
    display: flex;
    align-items: center;
    margin-bottom: 4rem;
}
.film-festival-detail{
    display: flex;
    align-items: center;
    padding: 8rem 0;
}
.premiere__item{
    display: block;
    margin-bottom: 8rem;
}
.premiere__item:last-of-type > .film-festival-detail{
    padding-bottom: 0;
}
.premiere__item:last-of-type{
    margin-bottom: 0;
}
.premiere__detail{
    flex-grow: 1;
}
.premiere__logo-img{
    display: block;
    width: 60rem;
    flex-grow: 0;
    flex-shrink: 0;
    margin-right: 16rem;
}
@media screen and (min-width: 600px) {
    .film-festival-detail{
        padding: 10rem 0;
    }
    .premiere__list{
        width: 100%;
    }
    .premiere__item{
        margin-bottom: 30rem;
    }
    .premiere__item:last-of-type{
        margin-bottom: 0;
    }
}


/* Festival Screening START */
.film-festival__item{
    margin-bottom: 20rem;
}
.film-festival__item:last-of-type{
    margin-bottom: 0;
}
.film-festival__detail{
    margin-bottom: 6rem;
}
.film-festival__section{
    font: var(--font-caption);
    margin-top: 6rem;
}
.film-festival__title-flex{
    margin-bottom: 10rem;
}
.film-festival__title{
    font: var(--font-h3);
    line-height: 1.4;
    margin-bottom: 10rem;
}
.film-festival__title--fw-bold{
    font: var(--font-h3-bold);
}

.film-festival__date{
    display: inline-block;
    font: var(--font-date);
    color: var(--gaGray);
    line-height: 100%;
}
.film-festival__date--ml{
    margin-left: 10rem;
}
.film-festival__country{
    display: inline-block;
    width: 18rem;
    margin-right: 4rem;
    margin-top: 4rem;
}
.film-festival__country--news{
    margin-top: 0;
}
.film-festival__country--news:last-of-type{
    margin-right: 0;
}
.film-festival__country-wrap{
    display: flex;
    margin-left: 8rem;
}
.film-festival__link-wrapper{
    padding: 10rem 8rem;
    border-top: 1px solid var(--gaGray);
    position: relative;
    z-index: 2;
}
.film-festival__item:last-of-type .film-festival__link-wrapper{
    padding-bottom: 0;
}

.film-festival__link-title{
    font: var(--font-caption);
    color: var(--gaBlack);
    margin-right: 4rem;
}
.film-festival__link{
    color: #D3586E;
    text-decoration: underline;
    font: var(--font-date);
    word-wrap: break-word;
    overflow-wrap: break-word;
}
.festival-screening__list{
    position: relative;
}
.festival-screening__item{
    display: flex;
    border-top: 1px solid var(--gaGray);
    padding: 8rem 0;
}
.festival-screening__dates{
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-width: 90rem;
    padding: 0 10rem;
}
.festival-screening__date{
    font: var(--font-date);
    color: var(--gaBlack);
}
.festival-screening__time{
    display: flex;
    font: var(--font-date);
    color: var(--gaBlack);
}
.festival-screening__time::after{
    content: "-";
    display: block;
    font-size: inherit;
    font-weight: inferit;
    margin-left: 2rem;

}
.festival-screening__detail{
    display: flex;
    flex-direction: column;
    justify-content: center;
    width: 100%;
    padding: 0 20rem;
    border-left: 1px solid var(--gaGray);
}
.festival-screening__theater{
    font: var(--font-theater);
}
.festival-screening__audience{
    font: var(--font-caption);
    margin-top: 2rem;
    color: #744F96;
}
.festival-screening--inactive{
    color:  #bababa;
}
.common__button{
    display: flex;
    max-width: 200rem;
    width: 100%;
    padding: 10rem 20rem;
    justify-content: center;
    align-items: center;
    background: var(--gaBlack);
    color: var(--gaWhite);
    position: relative;
    font: var(--font-button);
    transition: 0.5s all ease;
}
.common__buttons{
    width: 100%;
    margin-top: 60rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}
.common__buttons .common__button{
    margin-top: 0;
    width: 100%;
}
.common__buttons .common__button:nth-of-type(n+2){
    margin-top: 20rem;
}
.common__button--accordion{
    margin: 16rem auto 0;
}
.common__button--accordion::after {
    content: "";
    display: block;
    border-right: 1px solid var(--gaWhite);
    border-bottom: 1px solid var(--gaWhite);
    width: 7px;
    height: 7px;
    transform: rotate(45deg);
    position: absolute;
    right: 12px;
    transition: transform 0.5s ease;
}
.common__button--accordion--active::after {
    transform: rotate(-135deg);
}
.common__button--news{
    margin-top: 20rem;
}
.common__button--news::after{
    content: "";
    display: block;
    border-right: 1px solid var(--gaWhite);
    border-bottom: 1px solid var(--gaWhite);
    width: 7px;
    height: 7px;
    transform: rotate(-45deg);
    position: absolute;
    right: 12px;
    transition: transform 0.5s ease;
}
.common__button--top{
    margin: 0 auto;
}
@media screen and (min-width: 600px) {
    .film-festival__list{
        width: 100%;
    }
    .film-festival__detail{
        margin-bottom: 12rem;
    }
    .film-festival__item{
        padding: 0;
        margin-bottom: 60rem;
    }
    .film-festival__item:last-of-type{
        padding: 0;
        margin-bottom: 0;
    }
    .festival-screening__item{
        padding: 12rem 0;
    }
    .festival-screening__dates{
        min-width: 130rem;
        padding: 0 12rem;
    }
    .festival-screening__audience{
        margin-top: 4rem;
    }
    .film-festival__link{
        transition: 0.3s all ease;
    }
    .film-festival__link:hover{
        text-decoration: none;
    }
    .common__button{
        transition: 0.3s all ease;
        cursor: pointer;
    }
    .common__button:hover{
        background-color: var(--gaPurple);
        color: var(--gaWhite);
    }
    .common__button--news{
        margin-top: 40rem;
    }
    .common__button--accordion{
        margin: 20rem auto 0;
    }
    .common__buttons{
        margin-top: 104rem;
        flex-direction: row;
    }
    .common__buttons .common__button{
        margin-right: 20rem;
    }
    .common__buttons .common__button:last-of-type{
        margin-right: 0;
    }
    .common__buttons .common__button:nth-of-type(n+2){
        margin-top: 0;
    }
}
.no-archive-message{
    display: flex;
    align-items: center;
    padding: 0 12rem;
}
.no-archive-message__text{
    font: var(--font-std);
}
.sns__list{
    display: flex;
    padding: 10rem 40rem;
    width: fit-content;
    margin: 0 auto;
}
.sns__item{
    margin-right: 30rem;
}
.sns__item:last-of-type{
    margin-right: 0;
}
.sns__link{
    display: block;
    width: 34rem;
}
.sns__link--x{
    display: block;
    width: 32rem;
}
.sns__img{
    display: block;
    width: 100%;
}
.copy-right{
    width: 100%;
    padding: 20rem;
}
.copy-right__text{
    width: fit-content;
    font-family: 'Roboto', sans-serif;
    font-size: 12rem;
    margin: 0 auto;
}
@media screen and (min-width: 600px) {
    .sns__list{
        padding: 20rem 40rem;
    }
    .sns__item{
        margin-right: 30rem;
        transition: 0.3s all ease;
    }
    .sns__item:hover{
        opacity: 0.6;
    }
}
.award__list{
    width: 100%;
    display: flex;
    flex-wrap: wrap;
}
.award__item{
    display: block;
    width: 50%;
    padding: 4rem 0;
}
.award__item-img{
    display: block;
    width: 100%;
}
@media screen and (min-width: 600px) {
    .award__item{
        display: block;
        width: calc(100% / 3);
    }
}



.video-container {
    position: relative;
    width: 100%;
    aspect-ratio: 720 / 1280;
    overflow: hidden;
}

/* モバイルファースト: 初期設定はモバイル用の動画を表示 */
.background-video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    /* height: 100%; */
    object-fit: cover;
    display: none; /* すべてのビデオを初期非表示に */
    z-index: -1; /* 動画をオーバーレイの背面に配置 */
}

.mobile-video {
    display: block; /* モバイル用動画を表示 */
}

/* PCサイズ（600px以上）の場合のスタイル */
@media (min-width: 600px) {
    .video-container {
        aspect-ratio: 1280 / 680;
    }
    .mobile-video {
        display: none; /* モバイル用動画を非表示 */
    }
    
    .desktop-video {
        display: block; /* PC用動画を表示 */
    }
}

.overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5); /* 50%の黒の幕 */
    color: white;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
    padding: 20px;
    z-index: 1; /* オーバーレイを前面に配置 */
}
.overlay__texts{
    position: absolute;
    bottom: 10%;
}

.overlay__title {
    /* margin: 0; */
    font: var(--font-title);
}
.overlay__director{
    font: var(--font-h1)
}
.overlay__caption{
    font: var(--font-time);
}


.play-video{
    position: absolute;
    top: calc(50% - 35rem);
    left: calc(50% - 36rem);
    z-index: 15;
    transition: .6s all ease;
}
.play-video:hover{
    transform: scale(1.3);
}

/* モーダルウィンドウのスタイル */
.modal {
    display: none; /* 非表示にする */
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.8);
    justify-content: center;
    align-items: center;
    z-index: 1000;
    overflow: auto;
}

.modal-content {
    position: relative;
    padding: 20px;
    max-width: 90%;
    max-height: 90%;
    display: flex;
    justify-content: center;
    align-items: center;
}

.close-button {
    position: absolute;
    top: -40rem;
    right: 0rem;
    font-size: 50px;
    font-weight: bold;
    color: #aaa;
    cursor: pointer;
}

.close-button:hover,
.close-button:focus {
    color: #000;
    text-decoration: none;
    cursor: pointer;
}
@media (min-width: 600px) {
    .close-button {
        position: absolute;
        top: -40rem;
        right: -40rem;
        font-size: 50px;
        font-weight: bold;
        color: #aaa;
        cursor: pointer;
    }
    
}

/* iframeのスタイル */
iframe {
    border: none; /* 枠を削除 */
    outline: none; /* フォーカス時のアウトラインを削除 */
    box-shadow: none; /* フォーカス時のボックスシャドウを削除 */
    -webkit-box-shadow: none; /* Safari/Chrome用 */
    -moz-box-shadow: none; /* Firefox用 */
    width: 100%; /* デフォルトは親要素に合わせる */
    max-width: 100%; /* 親要素に対して最大幅を設定 */
}

@media (min-width: 600px) {
    iframe {
        width: 960px; /* PCサイズの場合の幅 */
        height: 540px; /* アスペクト比16:9を維持する高さ */
    }
}
.contents__right {
    flex-grow: 1; /* 残りのスペースを埋めるように */
    flex-shrink: 1; /* 親要素のサイズに応じて縮小する */
    width: 100%;
    overflow: hidden; /* はみ出しを隠す */
}

.poster-img {
    width: 100%;
}
@media (min-width: 600px) {
    .poster-img {
        width: 60%;
        max-width: calc(100% - 240rem); /* タイトルの幅を考慮して最大幅を設定 */
    }
}

.theater__title{
    font: var(--font-h2-large);
    margin-bottom: 10rem;
    text-decoration: underline;
    width: fit-content;
}
.theater__title:hover{
    color: #ffc400;
    text-decoration: none;
}
.theater__address{
    font: var(--font-std);
    margin-bottom: 14rem;
}
.theater__date{
    font: var(--font-h2);
    color: var(--gaBlack);
    margin-bottom: 2rem;
}
.theater__region{
    font: var(--font-h3);
    color: var(--gaBlack);
    margin-bottom: 10rem;
}
.theater__region-block{
    border-bottom: 1px solid var(--gaGray);
    padding: 30rem 0;
}
.theater__region-block:first-of-type{
    padding: 0 0 30rem;
}
.theater__detail{
    margin-bottom: 40rem;
}
.theater__detail:last-of-type{
    margin-bottom: 0;
}
.companies{
    padding: 20rem 0 0;
    width: 100%;
}
.companies__img{
    margin: 0 auto;
    display: block;
    width: 60%;
}
@media (min-width: 600px) {
    .companies{
        padding: 30rem 0 0;
    }
    .companies__img{
        width: 30%;
    }
}