body, html {
    margin: 0;
    padding: 0;
    height: 100%;
    font-family: 'Roboto', sans-serif;
    background-color:white;}
.smp{display:none;}
@media screen and (max-width:700px){
.smp{display:block;}
.pc{display:none;}
}

/*ヘッダー・グローバルメニュー*/
.header_lower {
    display: flex;
    position:absolute;
    width:100%;
    height:7.6vw;
    justify-content: space-between;
    align-items: center;
    background-color:#fff;
    z-index:10;
    padding: 0;
    box-sizing:border-box;
    -moz-box-sizing:border-box;
    -webkit-box-sizing: border-box;}
.header_lower nav {
    display: flex;
    list-style: none;}
.header_lower nav a.nav__link {
    text-decoration: none;
    color: #000;
    font-size:1.5vw;
    margin: 2.6vw 1.5vw;
    font-family: "Oswald", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;}
.header_lower nav .link span{
    color: #000;
    font-size:1.5vw;
    font-family: "Oswald", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;}
.header_lower nav .link{
    position: relative;
    margin: 0 1.5vw;
    padding:2.6vw 0;
    display: flex;
    align-items: center;
    gap: 5px;
    cursor: pointer;
    transition: color 1s;}
.header_lower nav .link span::after {
    content: '▼';
    display:inline-block;
    margin-left:0.5vw;
    font-size: 1.2vw;}
.header_lower nav .dropDown {
    position: absolute;
    display: none;
    bottom: 0;
    left: -6vw;
    padding: 0;
    border: 1px #fff solid;
    border-top: 0;
    width: 35vw;
    color: #fff;
    transform: translate(0, 100%);
    background-color: rgba(0, 0, 0, 1);}
.header_lower nav .dropDown ul{
    list-style:none;
    margin:0;   padding:0;}
.header_lower nav .link:hover > .dropDown,.header nav .link.active > .dropDown {
    display: block;}
.header_lower nav .link .dropDown__list {
    display: flex;
    flex-direction: column;}
.header_lower nav .link .dropDown__item a.dropDown__link {
    display:block;
    color:#fff;
    text-decoration:none;
    padding:0.75vw 0.5vw;
    border-bottom:1px solid #fff;}
.header_lower nav .link .dropDown__item:last-child a.dropDown__link{
    border-bottom:none;}
.header_lower nav .link .dropDown__item a.dropDown__link:hover{
    background-color:rgba(255,255,255,0.5);
    color:#000;}
.header_lower .logo {
    width: 17vw;
    margin-left:7vw;}
.header-top.lower{
    position:absolute;
    top:0;  right:0;
    width:20vw;
    height:6.4vw;
    display:flex;
    flex-direction:column;
    justify-content:space-around;
    padding:0.6vw;
    padding-right:0;
    border-left:1px solid #000;}
.header-top.lower a{
    color:#000;
    text-decoration:none;
    position:relative;
    width:100%;
    padding:0 4vw;
    margin:0;
    font-size:1.5vw;
    font-family: "Oswald", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
    box-sizing:border-box;
    -moz-box-sizing:border-box;
    -webkit-box-sizing: border-box;}
@media screen and (max-width:700px){
.header_lower{
    background: none;
    position: fixed;
    background-color: #fff;
    height: 10vw;}
.footer-bottom-text {
    height: auto;}
.header_lower nav .dropDown{
    background:none;}
}


/*メインビジュアル*/
.main-visual_lower{
    position:relative;
    background-color:#fff;
    height:50vw;}
.main-visual_lower .mv-image {
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: 50vw;
    z-index: 0;
    overflow: hidden;
    max-width: 100%;}
.main-visual_lower .mv-image img{
    width: 100%;
    height: 50vw;
    object-fit: cover;
    height: 100%;
    top: 0;    left: 0;
    position: absolute;
    width: 100%;}
.main-visual_lower .mv-image.form-thumnail img{
    top:5vw;}
.main-visual_lower .mv-image::after {
    position: absolute;
    content: "";
    display: block;
    top: 0;
    bottom: 0;
    background-color: rgba(0,0,0,0.4);
    z-index: 2;
    width: 100%;}
/*例外処理*/
.main-visual_lower.base{height:40vw;}
.main-visual_lower.base .mv-image{top:5vw;height:35vw;}
.main-visual_lower.base .mv-image::after {background-color: rgba(0,0,0,0.3);}
.main-visual_lower.works .mv-image img {object-position: 0px 25px;}
.main-visual_lower.works .mv-image::after {background-color: rgba(0,0,0,0.3);}
/*--------*/
.main-visual_lower .overlay-text{
    position:absolute;
    font-size:1.5vw;
    width:50vw;
    top:50%;    left:33%;
    margin:0;
    color:#fff;
    transform:translate(-50%,-50%);
    line-height:3vw;}
.main-visual_lower .overlay-text.works {
    width: 75vw;
    left: 45%;}
.main-visual_lower .overlay-text .mv-title{
    display:block;
    font-size:2.5vw;
    margin-bottom:1vw;
    line-height:4vw;}
.lower_mv_bottom{
    position:absolute;
    top:45vw;   left:0;  right:0;
    width:100%;}
.lower_mv_bottom img{
    width:100%;}
.main-visual_lower.base .overlay-text{top:55%;}
.main-visual_lower.base .lower_mv_bottom{top:35vw;}
@media screen and (max-width:700px){
.main-visual_lower,.main-visual_lower.base{height:60vw;}
.main-visual_lower .mv-image,.main-visual_lower.base .mv-image{height:59vw;}
.main-visual_lower .mv-image img{top:10vw;}
.main-visual_lower.base .mv-image{top:0;}
.main-visual_lower.base .mv-image img{object-position: left;}
.main-visual_lower.works .mv-image img {
    object-position: 0;}
.lower_mv_bottom,.main-visual_lower.base .lower_mv_bottom{top:51vw;}
.main-visual_lower .overlay-text .mv-title {
    font-size: 5vw;
    line-height: 7vw;
    width: 75vw;}
.main-visual_lower.works .overlay-text .mv-title{width:80vw;}
}


/*下層ページのコンテンツレイアウト（共通）*/
.lower_container {
    position: relative;
    padding:2.5vw 10vw;
    width:100%; height:auto;
    box-sizing:border-box;
    -moz-box-sizing:border-box;
    -webkit-box-sizing:border-box;}
.bread-list{
    padding:0;
    color:black;}
.bread-list a{
    color:black;
    text-decoration:none;
    padding:0 5px;}
.lower-section .title{
    margin:5vw 0 0;
    padding-left:4vw;
    position:relative;
    font-size:4vw;
    font-family: "Oswald", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;}
.lower-section .title::before{
    position:absolute;
    content:"";
    display:block;
    width:3vw;
    height:1px;
    background-color:#000;
    top:50%;    left:0;
    transform:translateY(-50%)}
@media screen and (max-width:700px){
.lower-section .title {
    font-size: 8vw;}
.lower_container.base .lower-section .title {
    font-size: 6.5vw;}
}


/*下層ページのコンテンツレイアウト（AlonAlonHOME）*/
.home-description{
    margin-top:5vw;
    padding-left:4vw;
    height:30vw;
    position:relative;
    box-sizing:border-box;
    -moz-box-sizing:border-box;
    -webkit-box-sizing:border-box;}
.home-description .home-title{
    margin:0;
    width:40%;
    position:relative;
    font-size:3vw;
    font-family: "Oswald", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;}
.home-description .home-title::after{
    position:absolute;
    content:"";
    display:block;
    width:2vw;
    height:1px;
    background-color:#000;
    top:6vw;    left:13%;
    transform:translateX(-50%)}
.home-overlay-movie {
    position: absolute;
    width: 32vw;    height: 20vw;
    top: 0;     right: 10%;
    overflow:hidden;
    z-index: 1;}
.home-overlay-movie::after{
    display:block;
    content:"";
    position:absolute;
    /*background-color:rgba(0,0,0,0.3);*/
    top:0;  left:0; right:0;    bottom:0;
    z-index:2;} 
.home-overlay-movie img {
    width:100%;
    height: 20vw;
    object-fit: cover;
    border:1px solid #aaa;
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    z-index: 0;}
.home-overlay-movie .play {
    position: absolute;
    top: 50%;
    left: 50%;
    transform:translate(-50%,-50%);
    z-index:5;}
.home-overlay-movie .play a {
    border:1px solid white;
    width: 6vw;
    height: 6vw;
    margin-bottom: 1.5vw;
    font-size:3vw;
    display: flex;
    justify-content: center;
    align-items: center;
    color: white;
    text-decoration: none;
    border-radius: 6vw;}
.home-description .home-text {
    margin: 0;
    margin-top: 4vw;
    padding-left: 3vw;
    width: 38%;
    font-size:1vw;
    line-height:2.3vw;}
.home-description .home-text span{
    display:block;
    font-size:2vw;
    margin-bottom:1.5vw;}
.home-description .home-text .room-info {
    width: 30vw;}
.home-description .home-text .capacity,
.home-description .home-text .facilities{
    display: flex;
    margin-bottom:1vw;}
.home-description .home-text .label {
    width:5vw;
    margin:0.5vw 1vw;
    height: 2.5vw;
    background-color: #eee;
    text-align: center;}
.home-description .home-text .value,
.home-description .home-text .category{
    width:5vw;}
.home-description .home-text .details{
    width:16vw;}
.home-description .home-text .available {
    color: #005CB9;
    background-color: #eee;
    padding: 0 1vw;
    border-radius: 3vw;
    display: inline-block;}
.home-description .home-text .full {
    color: #C63D3D;
    background-color: #eee;
    padding: 0 1vw;
    border-radius: 3vw;
    display: inline-block;}
.home-description .home-text .comming-soon {
    color: #005CB9;}
.home-description .home-text .shared,
.home-description .home-text .private,
.home-description .home-text .capacity_content {
    display:flex;
    width:22vw;
    background-image : linear-gradient(to right, #000 1px, transparent 1px);
    background-size: 5px 1px;
    background-repeat: repeat-x;
    background-position: left bottom;
    padding: 0.5vw 0;}
.home-description .home-text .category {
    }

@media screen and (max-width:700px){
.home-description {
    height: 110vw;
    padding-left:0;}
.home-description .home-title {
    font-size: 4vw;
    width:100%;}
.home-description .home-overlay-movie {
    width: 100%;
    height: 50vw;
    top: 7vw;
    right: auto;
    left: 50%;
    transform: translate(-50%);}
.home-description .home-overlay-movie img {
    height: auto;}
.home-description .home-title::after{width:0;}
.home-description .home-text {
    width: 100%;
    padding-left: 0;
    position: absolute;
    top: 61vw;
    margin-top: 0;
    font-size:2.5vw;
    line-height:3.5vw; }
.home-description .home-text span {
    font-size: 4vw;}
.home-description .home-text .room-info {
    width: 100%;}
.home-description .home-text .label {
    width: 10vw;
    height: 3.5vw;
    font-size: 2.5vw;
    padding: 1vw 0;
    margin: 1vw 3vw 1vw 0;}
.home-description .home-text .shared, 
.home-description .home-text .private, 
.home-description .home-text .capacity_content {
    width: 60vw;
    background-size: 3px 1px;
    padding: 2vw 0;}
.home-description .home-text .value, 
.home-description .home-text .category {
    width: 15vw;}
.home-description .home-text .details {
    width: 40vw;}
.home-description .home-text .full,.home-description .home-text .available{padding:0 4vw;}
}

/*下層ページのコンテンツレイアウト（shop-wrap）*/
.shop-wrap{
    display:flex;
    padding-left: 4vw;
    margin-top: 4vw;
    justify-content: space-between;
    align-items: baseline;}
.shop-link{
    display:flex;
    flex-direction:column-reverse;
    width:46%;
    box-sizing:border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing:border-box;}
.shop-link .add-info {
    font-size: 1.2vw;
    margin: 0;}
.shop-title{
    font-size:2vw;
    width:32vw;
    color:#3E3E3E;
    margin:1vw 0;}
.shop-overlay-thumnail {
    position: relative;
    height:24vw;
    cursor: pointer;}
.shop-overlay-thumnail img{
    width:100%;
    height:24vw;
    object-fit: cover;}
.shop-overlay-thumnail .arrow-movie{
	position: absolute;
    margin:0;
    top: 45%;    right: 10%;
    transform:translate(-50%,-50%);
    font-size: 2vw;
    font-family: "Oswald", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
    color: #3E3E3E;
    display: inline-block;
    text-decoration: none;
    outline: none;
    z-index:5;}
.shop-overlay-thumnail .arrow-movie::before{
    content: '';
    position: absolute;
    top: 4vw;    left: -1vw;
    width: 15vw;    height: 1px;
    background: #fff;
    z-index:5;}
.shop-link-2 .shop-overlay-thumnail .arrow-movie::before{
    left:-2.2vw;}
.shop-overlay-thumnail .arrow-movie::after{
    content: '';
    position: absolute;
    top: 3.2vw;    right: -58%;
    width: 3vw;    height: 1px;
    background: #fff;
    transform: rotate(35deg);
    z-index:5;}
.shop-overlay-thumnail .link-circle{
    position:absolute;
    margin: 0;
    right: 1vw;    bottom: 35%;
    width: 6vw;    height: 6vw;
    border: 1px red solid;
    border-radius: 50%;
    z-index:4;
    transition: .5s;}
.shop-overlay-thumnail:hover::after{
    content:"";
    display:block;
    position:absolute;
    top:0;  left:0; right:0;    bottom:0;
    background-color:rgba(0,0,0,0.3);}
.shop-link .shop-overlay-thumnail:hover::after{
    background-color:rgba(255,255,255,0.5);}
.shop-overlay-thumnail:hover .link-circle{
    background-color:red;}
.shop-link-2{
    display:block;
    padding-left: 4vw;
    margin-top: 4vw;
    margin-bottom:10vw;
    box-sizing:border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing:border-box;}
.shop-link-2 .shop-overlay-thumnail{
    display:block;
    height:12.4vw;}
.shop-link-2 .shop-overlay-thumnail img{
    width:100%;
    height:12.4vw;
    object-fit: cover;}
.shop-link-2 .shop-overlay-thumnail .arrow-movie{
    top: 50%;    right: 5%;
    color: #fff;}
.shop-link-2 .shop-overlay-thumnail .link-circle{
    right: 1vw;    bottom: 2vw;}
@media screen and (max-width:700px){
.shop-wrap {
    flex-direction: column;
    padding: 0;
    gap:7vw;
    margin-bottom:12vw;}
.shop-link {
    width: 100%;
    height: 70vw;
    flex-direction: column;}
.shop-link .add-info {
    font-size: 2.8vw;
    margin: 0 0 2vw;}
.shop-title {
    font-size: 4vw;
    width: 100%;}
.shop-overlay-thumnail,.shop-overlay-thumnail img,.shop-link-2 .shop-overlay-thumnail,.shop-link-2 .shop-overlay-thumnail img {
    height: 50vw;}
.shop-overlay-thumnail .link-circle,.shop-link-2 .shop-overlay-thumnail .link-circle {
    bottom: auto;
    top: 40%;
    right: 3vw;
    width: 10vw;
    height: 10vw;}
.shop-overlay-thumnail .arrow-movie {
    font-size: 3.5vw;}
.shop-overlay-thumnail .arrow-movie::before {
    top: 6vw;
    width: 26vw;}
.shop-link-2 .shop-overlay-thumnail .arrow-movie::before{left:-1vw;}
.shop-overlay-thumnail .arrow-movie::after {
    top: 5vw;}
.shop-link-2 {
    padding: 0;}
.shop-link-2 .shop-overlay-thumnail .arrow-movie {
    top:45%;    right: 14%;}
.shop-link-2 .shop-overlay-thumnail .arrow-movie::after {
    right: -73%;}
.lower-section .title.furusato{font-size:7.5vw}
}


/*ニュース*/
.news-pages{
    position:relative;}
.news-page-wrap {
    display: flex;
    margin: 3vw auto 10vw;
    padding: 0;
    border-top: 1px solid #aaa;
    width: 75vw;}
.news-page-sidebar{
    padding:5vw 1vw;}
.news-page-sidebar ul{
    list-style: none;
    margin: 5vw 0;
    padding: 2vw 0;
    line-height: 3vw;
    font-size: 1.2vw;
    border-top: 1px #aaa solid;}
.news-page-sidebar li a{
    text-decoration:none;
    color:#000;}
.news-page{
    margin-left:5vw;}
.news-page ul{
    list-style:none;
    margin:0;   padding:0;}
.news-page li a{
    display:flex;
    text-decoration:none;
    padding:1vw 0;
    color:#000;
    gap:1.5vw;
    align-items:center;
    justify-content: space-between;
    width: 53vw;
    border-bottom: 1px #aaa solid;}
.news-page p{
    margin:0;   padding:0;}
.news-page .date{
    font-family: "Oswald", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
    font-size:1.2vw;
    text-align:center;}
.news-page .date span{
    display:block;
    font-size:1.8vw;}
.news-page .category{
    font-family: "Oswald", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
    font-size:1vw;}
.news-page .news-title{
    font-size:1.3vw;
    width:50%;}
.news-page .thumnail{
    width:10vw; height:10vw;}
.news-page .thumnail img{
    width:10vw; height:10vw;
    object-fit: cover;}
@media screen and (max-width:700px){
.news_pages{
    margin-bottom:15vw;}
.news-page-wrap {
    margin: 5vw auto 0;
    width: 100%;
    flex-direction: column;}
.news_pages .en-title {
    left: 50%;}
.news-sidebar-title{padding-left:5vw;}
.news-page-sidebar ul{padding:5vw;}
.news-page-sidebar ul {
    border-top: 0;
    margin: 0;
    padding: 5vw 10vw;
    box-sizing: border-box;
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    gap: 7vw;
    justify-content: space-around;}
.news-page-sidebar li a {
    font-size: 3.5vw;}
.news-page li a {
    width: 90%;
    height:12vw;
    margin: 0 auto;
    display: block;
    position: relative;}
.news-page .date {
    display: inline-block;
    position: absolute;
    font-size: 4vw;
    top: 1vw;
    left: 1vw;}
.news-page .date span {
    display: inline;
    font-size: 4vw;}
.news-page .category {
    position: absolute;
    top: 2vw;
    left: 25vw;
    font-size: 3vw;}
.news-page .news-title {
    font-size: 3vw;
    width: 75%;
    position: absolute;
    top: 8vw;
    left: 1vw;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;}
.news-page .thumnail {
    position: absolute;
    right: 0;
    top: 2vw;
    width: 12vw;
    height: 12vw;}
}



/*運営会社・団体*/
.company {
    width: 70vw;
    margin: 0 auto 5vw;
    background-color: #fff;
    padding: 20px;}
.company .sub-title{
    font-size:3vw;
    margin-bottom:1vw;}
.company .info-item {
    display:flex;
    width:100%;
    font-size:1.4vw;
    line-height:2.8vw;
    align-items: center;}
.company .info-title {
    width:25%;
    text-align:center;
    color: #000;
    padding:2vw;
    border-bottom: 1px solid #ddd;}
.company .info-content {
    width:60%;
    margin-left: 2vw;
    color: #000;
    padding:2vw;
    border-bottom: 1px solid #ddd;}
.company .no-border {
    border-bottom: 1px solid transparent;}
.company .dot-border {
    border-bottom: 1px dotted #ddd;}
.company .map{
    margin-top:3vw;}
.company .map iframe{
    width:100%;}
.text-box{
    width: 70vw;
    margin: 0 auto 5vw;
    background-color: #fff;
    padding: 2vw 0;
    font-size:1.2vw;
    line-height:2.8vw;
    color: #000;}
.text-box .hl{
    font-size:1.8vw;
    margin:1vw 0;
    font-weight:bold;}
@media screen and (max-width:700px){
.company {
    padding: 0;
    margin-bottom:20vw;
    width: 100%;}
.company .sub-title {
    font-size: 5.5vw;
    margin-bottom: 6vw;}
.company .info-item {
    flex-direction: column;
    font-size: 3.7vw;
    text-align: center;
    line-height: 6vw;
    margin-bottom: 2vw;}
.company .info-title {
    background-color: #F8F8F8;
    font-weight:bold;
    width: 100%;
    border: 0;}
.company .info-content {
    width: 100%;
    margin: 0;
    padding: 4vw 2vw;
    border: 0;}
.company .dot-border {
    border-bottom: 1px dashed #ccc;}
.company .info-item.format-2 .info-title{background-color:transparent;}
.map iframe {
    height: 80vw;}
.text-box {
    width: 100%;
    font-size: 3vw;
    line-height: 5vw;}
.text-box .hl {
    font-size: 4.5vw;
    margin: 6vw 0;}
}

/*AlonAlonWorks*/
.works-permittion-number {
    width: 70vw;
    margin: 3vw auto 6vw;
    padding: 3vw 0;
    text-align: center;
    font-size: 1.5vw;
    border-top: 1px solid #000;
    border-bottom: 1px solid #000;}
@media screen and (max-width:700px){
.works-permittion-number {font-size:3vw;}
}


/*ページトップボタン*/
.pagetop{bottom:2vw;}
.pagetop.form{
    bottom: 5vw;
    width: 3.8vw;}
@media screen and (max-width:700px){
.pagetop.form{
    bottom: 15vw;
    width: 10vw;}
}


/*モーダル本体の指定 + モーダル外側の背景の指定*/
.lower_modal-container{
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    text-align: center;
    background: rgba(0,0,0,50%);
    padding: 40px 20px;
    overflow: auto;
    opacity: 0;
    visibility: hidden;
    transition: .3s;
    box-sizing: border-box;
    width: 80vw;
    height: 50vw;
    z-index:100;}
.lower_modal-container:before{
    content: "";
    display: inline-block;
    vertical-align: middle;
    height: 100%;}
.lower_modal-container.active{
    opacity: 1;
    visibility: visible;}
.lower_modal-container .modal-body{
    position: relative;
    display: inline-block;
    vertical-align: middle;
    width: 90%;}
.lower_modal-container .modal-close{
    position: absolute;
    display: flex;
    align-items: center;
    justify-content: center;
    top: -40px;
    right: -40px;
    width: 40px;
    height: 40px;
    font-size: 40px;
    color: #fff;
    cursor: pointer;}
.lower_modal-container .modal-content{
    text-align: left;}
