@charset "utf-8";

.rollAnime.roll span {
    transition-property: opacity,transform;
    transform: rotateY(360deg);
    transition: all .8s cubic-bezier(.77,0,.175,1);
    transition-timing-function: cubic-bezier(.77,0,.175,1);
    display: inline-block;
}

/*==================================================
スライダーのためのcss
===================================*/
.slider {
    position:relative;
	z-index: 1;
	
	height: 100vh;
}

@media screen and (min-width: 992px),
print {
   .slider {
    margin-top:-65px;
} 
}


.slider-item01 {
    background:url(../../../../img/top/p0sp.jpg);
}

.slider-item02 {
    background:url(../../../../img/top/p2sp.jpg);
}

.slider-item03 {
    background:url(../../../../img/top/p3sp.jpg);
}

.slider-item04 {
    background:url(../../../../img/top/p4sp.jpg);
}

@media screen and (min-width: 992px),
print {
    .slider-item01 {
    background:url(../../../../img/top/p0.jpg);
}

.slider-item02 {
    background:url(../../../../img/top/p2.jpg);
}

.slider-item03 {
    background:url(../../../../img/top/p3.jpg);
}

.slider-item04 {
    background:url(../../../../img/top/p4.jpg);
}
}

.slider-item {
    width: 100%;
    height:100vh;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
}

.slick-prev, 
.slick-next {
    position: absolute;
	z-index: 3;
    top: 42%;
    cursor: pointer;
    outline: none;
    border-top: 2px solid #ccc;
    border-right: 2px solid #ccc;
    height: 25px;
    width: 25px;
}

.slick-prev {
    left:2.5%;
    transform: rotate(-135deg);
}

.slick-next {
    right:2.5%;
    transform: rotate(45deg);
}


/*ドットナビゲーションの設定

.slick-dots {
	position: relative;
	z-index: 3;
    text-align:center;
	margin:-50px 0 0 0;
}

.slick-dots li {
    display:inline-block;
	margin:0 5px;
}

.slick-dots button {
    color: transparent;
    outline: none;
    width:2px;
    height:17px;
    display:block;
    border-radius:50%;
    background:#ccc;
}

@media screen and (min-width: 992px),
print {
    .slick-dots button {
    height:13px;
}
}

.slick-dots .slick-active button{
    background:#333;
}

スライド、ドット表示
* {
    padding: 0; 
  margin: 0;
}

button {
  background-color: transparent;
  border-style: none;
  color: inherit;
}

*/

.slide-txt{
	position: absolute;
	z-index: 2;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	text-align: center;
	letter-spacing: 0.1em;
	text-transform: uppercase;
    color:#fff;
    font-size:3vw;
	text-shadow: 3px 3px 5px rgb(0 0 0 / 75%);
}

.slide-txt-big{
    	font-size:4vw;
}

@media screen and (min-width: 992px),
print {
    .slide-txt-big{
	font-size:5vw;
}
}

/*
+++++++++++++++++++++++++++++++

お知らせ

++++++++++++++++++++++++++++++++
*/

.top-info{
   background: url("../../../../img/top/info_back2.jpg") ;
    background-repeat: no-repeat;
    background-size: cover;
    padding:40px 10px;
}

@media screen and (min-width: 768px)
{
    .top-info{
    padding:50px 30px;
}
}

@media screen and (min-width: 992px),
print {
    .top-info{
   background: url("../../../../img/top/info_back.jpg") ;
    background-repeat: no-repeat;
    background-size: cover;
    padding:120px 30px 0;
}
}

.top-info-con{
    position: relative;
    padding-bottom:30px;
}

@media screen and (min-width: 992px),
print {
.top-info-con{
    max-width: 1200px;
    margin:auto;
    display: flex;
    justify-content: space-between;
    
}
    }

@media screen and (min-width: 992px),
print {
.top-info-left{
    width:30%;
    padding-top:70px;
}
    }

.top-info-name{
    font-size:30px;
    margin-bottom: 20px;
}

@media screen and (min-width: 992px),
print {
    .top-info-name{
    font-size:40px;
    margin-bottom:0;
}
}

@media screen and (min-width: 992px),
print {
    
.top-info-right{
  width: 65%;  
}
}



.top-info-day{
    font-size:12px;
}

@media screen and (min-width: 992px),
print {
    .top-info-day{
        width:20%;
        margin-right:30px;
}
}
@media screen and (min-width: 992px),
print {
    .top-info-title{
        width:75%;
}
}

.top-info-yaji{
    position: absolute;
    right:0;
    top:0; 
  bottom:0; 
  margin:auto 0; 
    width:20px;
    height:20px;
}

.top-info-backnumber{
    position: absolute;
    bottom:0;
    left:0; 
  right:0; 
  margin:0 auto; 
    width:150px;
}

@media screen and (min-width: 992px),
print {
    .top-info-backnumber{
    bottom:140px;
    left:0px; 
  right:auto; 
  margin:0; 
}
}

.top-info-backnumber::before{
    content: '';
  width: 18%;
  height: 1px;
  display: inline-block;
  background-color:#c15277;
  position: absolute;
  bottom: 1px;
  left:13px;
}

.top-info-backnumber ul{
    display: flex;
    justify-content: center;
    align-items: center;
    
    
}

.top-info-backnumber li{
    font-size:17px;
    color:#c15277;
    
}

.top-info-backnumber li img{
    width:10px;
    height:7px;
    
}

.top-info-backnumber li:first-child{
    margin-right: 15px;
    
}

.top-info-backnumber li:last-child{
    padding-top: 20px;
    
}

#top-info-backnumber-link:link{
    color:#000;
}

#top-info-backnumber-link:visited{
    color:#000;
}

/*
+++++++++++++++++++++++++++++++

くつろぎ

++++++++++++++++++++++++++++++++
*/

.top-kuturogi{
    background: url("../../../../img/top/kuturogi_back.jpg");
    background-repeat: no-repeat;
    background-size: cover;
    padding:40px 0;
}

@media screen and (min-width: 768px)
{
    .top-kuturogi{
    padding:40px 0;
}
}

@media screen and (min-width: 992px),
print {
    .top-kuturogi{
    padding:120px 0 0;
}
}

.top-kuturogi-t1{
    font-size:20px;
    margin-bottom: 30px;
    text-align: center;
    padding:0 10px;
}

@media screen and (min-width: 768px),
print {
    .top-kuturogi-t1{
    font-size:40px;
        padding:0 30px;
}
}

.top-kuturogi-t2{
    padding:0 10px;
    margin-bottom: 30px;
}

@media screen and (min-width: 992px),
print {
    .top-kuturogi-t2{
    margin-bottom:50px;
        line-height: 2.3;
        max-width: 1000px;
        margin:0 auto 50px;
        padding:0 30px;
}
}

.top-kuturogi-photo{
    margin-bottom: 40px;
}

@media screen and (min-width: 992px),
print {
    .top-kuturogi-photo{
    display: flex;
        justify-content: space-between;
        max-width: 1200px;
        margin:0 auto 100px;
}
}

.top-kuturogi-photo-left{
    width:90%;
    margin-bottom: 20px;
}

@media screen and (min-width: 992px),
print {
    .top-kuturogi-photo-left{
    width:55%;
    margin-bottom:0;
        margin-top:70px;
}
}

.top-kuturogi-photo-right{
    display: flex;
    flex-direction: row;
}

@media screen and (min-width: 992px),
print {
    .top-kuturogi-photo-right{
    flex-direction:column;
        width:40%;
}
}

@media screen and (min-width: 992px),
print {
.top-kuturogi-photo1{
    margin-bottom:40px;
}

.top-kuturogi-photo2{
    width:76%;
}
    }

/*
+++++++++++++++++++++++++++++++

梅桜

++++++++++++++++++++++++++++++++
*/

.top-umesakura-photo1{
width:95%;
}

@media screen and (min-width: 992px),
print {
.top-umesakura-photo1{
    max-width:1100px;
}
    }

.top-umesakura{
    background: url("../../../../img/top/furo_back2.jpg");
    background-repeat: no-repeat;
    background-size: cover;
    padding:40 10px 0;
}

@media screen and (min-width: 992px),
print {
    .top-umesakura{
    background: url("../../../../img/top/furo_back.jpg");
    padding:100 30px;
}
}

.top-umesakura-con{
    position: relative;
    color:#fff;
    padding:40px 10px 250px;
    
}

@media screen and (min-width: 992px),
print {
.top-umesakura-con{
    max-width: 1200px;
    margin: auto;
    display: flex;
    justify-content: space-between;
    padding:100px 30px 100px;
    
}
    }

@media screen and (min-width: 992px),
print {
.top-umesakura-con-left{
    width:45%;
}
    }

.top-umesakura-logo{
    margin-bottom: 30px;
    width:200px;
}

@media screen and (min-width: 992px),
print {
    .top-umesakura-logo{
    margin-bottom: 40px;
        width:250px;
}
}

.top-umesakura-t1{
    font-size:22px;
    margin-bottom: 15px;
}
@media screen and (min-width: 992px),
print {
    .top-umesakura-t1{
    font-size:28px;
        margin-bottom:20px;
}
}

.top-umesakura-t2{
    margin-bottom: 20px;
}

@media screen and (min-width: 992px),
print {
.top-umesakura-t2{
    line-height: 2.3;
    margin-bottom:0;
}
    }

@media screen and (min-width: 992px),
print {
.top-umesakura-con-right{
   width:40%; 
    padding-top:200px;
    
}
    }

.top-umesakura-photo2{
    position: absolute;
    bottom:-50px;
    right:0;
}

@media screen and (min-width: 768px),
print {
    
.top-umesakura-photo2{
    right:0;
    bottom:-40px;
    width:400px;
}
}

@media screen and (min-width: 992px),
print {
    
.top-umesakura-photo2{
    position: absolute;
    bottom:auto;
    top:-90px;
    right:0;
    width:40%;
}
}

/*
+++++++++++++++++++++++++++++++

客室

++++++++++++++++++++++++++++++++
*/

.top-room{
    background: url("../../../../img/top/room_back2.jpg");
    background-repeat: no-repeat;
    background-size: cover;
    padding:30px 10px;
}

@media screen and (min-width: 992px),
print {
    .top-room{
    background: url("../../../../img/top/room_back.jpg");

        padding:110px 30px;
}
}

@media screen and (min-width: 992px),
print {
.top-room-con1{
    max-width:1100px;
    margin:auto;
    display: flex;
    justify-content: space-between;
}
    }

.top-room-con1-left{
    font-size:28px;
    margin-bottom: 20px;
    padding-left:30px;
}

@media screen and (min-width: 992px),
print {
   .top-room-con1-left{
    font-size:38px;
       writing-mode: vertical-rl;
       width:15%;
       margin-bottom:0;
       padding-left:0;
       line-height: 2.3;
       
} 
}

.top-room-con1-right{
    margin-bottom: 30px;
}

@media screen and (min-width: 992px),
print {
.top-room-con1-right{
    padding-top:80px;
    width:70%;
}
    }

.top-room-con2{

    display: flex;
    flex-direction: column;

}

@media screen and (min-width: 992px),
print {
.top-room-con2{
    max-width:1100px;
    margin:auto;
    flex-direction:row;
    justify-content: space-between;
}
    }

.top-room-con2-left{
    margin-bottom: 30px;
    order:2;
}
@media screen and (min-width: 992px),
print {
    .top-room-con2-left{
        margin-top:-60px;
    margin-bottom:0;
        width:45%;
        order:1;
}
}

.top-room-con2-right{
    order:1;
    margin-bottom: 30px;
}

@media screen and (min-width: 992px),
print {
    .top-room-con2-right{
    width:45%;
        padding-top:70px;
        order:2;
        margin-bottom:0;
}
}

.top-room-t1{
    margin-bottom: 20px;
}

@media screen and (min-width: 992px),
print {
   .top-room-t1{
    margin-bottom:50px;
       line-height: 2.2;
} 
}

/*
+++++++++++++++++++++++++++++++

宴会

++++++++++++++++++++++++++++++++
*/

.top-party{
    background: url("../../../../img/top/party_back.jpg");
    background-repeat: no-repeat;
    background-size: cover;
    padding:60px 10px;
    position: relative;
}

@media screen and (min-width: 992px),
print {
    .top-party{
        padding:110px 30px;
}
}

.top-party-photo1{
    position: absolute;
    top:-40px;
    left:0;
    width:90%;
}

@media screen and (min-width: 992px),
print {
    .top-party-photo1{
    top:-85px;
        max-width:700px;
}
}

.top-party-con{
    display: flex;
    flex-direction: column;
    padding-top:100px;
}

@media screen and (min-width: 768px)
{
.top-party-con{
    max-width: 1000px;
    margin:auto;
    justify-content: space-between;
    flex-direction: row;
     padding-top:280px;
}
    }

@media screen and (min-width: 992px),
print {
.top-party-con{
     padding-top:200px;
}
    }

.top-party-left{
    margin-bottom: 30px;
    order: 2;
}

@media screen and (min-width: 768px),
print {
    .top-party-left{
    margin-bottom:0;
        width:70%;
        order:1;
}
}

.top-party-left ul{
    display: grid;
    grid-template-columns: 1fr 1fr;
}

@media screen and (min-width: 992px),
print {
    .top-party-left ul{
        gap:40px;
        
}
}

.top-party-left li:first-child{
    padding-top:40px;
}

@media screen and (min-width: 992px),
print {
    .top-party-left li:first-child{
    padding-top:60px;
}
}

.top-party-right{
    font-size:28px;
    margin-bottom: 20px;
    padding-left:30px;
    order: 1;
}

@media screen and (min-width: 768px),
print {
   .top-party-right{
    font-size:38px;
       writing-mode: vertical-rl;
       width:15%;
       margin-bottom:0;
       padding-left:0;
       line-height:1.9;
       order: 2;
       
} 
}

@media screen and (min-width: 768px),
print {
.top-party-con2{
    max-width: 1200px;
    display: flex;
    justify-content: flex-end;
}
    }

@media screen and (min-width: 768px),
print {
.top-party-con3{
    width:60%;
    padding-right:30px;
}
    }

@media screen and (min-width: 992px),
print {
.top-party-con3{
    width:44%;
    padding-right:30px;
}
    }

.top-party-t1{
    margin-bottom: 30px;
}

@media screen and (min-width: 992px),
print {
   .top-party-t1{
    line-height: 2.3;
    margin-bottom:30px;
} 
}

/*
+++++++++++++++++++++++++++++++

料理

++++++++++++++++++++++++++++++++
*/

.top-food{
    padding:40px 10px;
    display: flex;
    flex-direction: column;
}

@media screen and (min-width: 768px)
{
    .top-food{
    padding:0 30px 40px;
        max-width: 1100px;
        margin: auto;
        flex-direction: row;
        justify-content: space-between;
}
}

@media screen and (min-width: 992px),
print {
    .top-food{
    padding:100px 30px 90px;
}
}

.top-food-left{
    margin-bottom: 30px;
    order:2;
}

@media screen and (min-width: 768px),
print {
.top-food-left{
    width:48%;
    margin-bottom:0;
    order:1;
}
    }

.top-food-t1{
    font-size:25px;
    margin-bottom: 20px;
}

@media screen and (min-width: 992px),
print {
   .top-food-t1{
    font-size:30px;
    margin-bottom:30px;
} 
}

.top-food-t2{
    margin-bottom:30px;
}

@media screen and (min-width: 992px),
print {
    .top-food-t2{
    margin-bottom:40px;
}
}

.top-food-right{
    order:1;
    margin-bottom: 30px;
}

@media screen and (min-width:768px),
print {
    .top-food-right{
    order:2;
        width:40%;
}
}

.top-food-photo{
    margin-bottom: 30px;
}


@media screen and (min-width: 768px),
print {
    .top-food-photo{
    max-width: 1000px;
        margin:0 auto 50px;
}
}

@media screen and (min-width: 992px),
print {
    .top-food-photo{
    max-width: 1000px;
        margin:0 auto 100px;
}
}

.top-food-photo ul{
    display: grid;
    grid-template-columns: 1fr 1fr;
}

.top-food-photo li:first-child{
    margin-top:50px;
    
}

@media screen and (min-width: 992px),
print {
    .top-food-photo li:first-child{
    margin-top:-100px;
    
}
}

/*
++++++++++++++++++++++++++++++++++++++

@media screen and (min-width: 992px),
print {
    
}

@media screen and (min-width: 768px) {
    
}

@media screen and (min-width: 768px) and (max-width:991px)
{
}

+++++++++++++++++++++++++++++++++++++++++
*/
