@charset "UTF-8";
/*---------------*/
/* fv-plan
/*---------------*/
.main-pc{
    display: none;
}
.main-sp{
    width: 100%;
    height: 513px;
    object-fit: cover;
    object-position: center center;
}
/*---------------------*/
/* ご予約バナー(sp-pc)          
/*---------------------*/
/* PC用 */
.float-button__wrap{
    display: none;
}
.more04-01{
    position: relative;
    margin: 50px 0 0 0;
    width: 52px;
    display: none;
    cursor: pointer;
}
.more04-01 img{
    display: none;
    width: 52px;
    position: absolute;
    top: 50%;
    right: 0%;
    transform: translate(-50%, -50%);
    transition: .3s;
}
.more04-01:hover img:nth-of-type(2){
    opacity: 0;
}
/* SP用 */
.float-button-02__wrap{
    display: block;
    margin-top: 140px;
    margin-bottom: 45px;
}
.float-button-02__wrap img{
    width: 145px;
}
.more04-02{
    position: relative;
    margin: 50px 0 0 0;
    width: 140px;
    display: block;
    cursor: pointer;
}
.more04-02 img{
    width: 140px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    transition: .3s;
}
.more04-02:hover img:nth-of-type(2){
    opacity: 0;
}
/*------------------*/
/* plan-contents
/*------------------*/
.plan-inner, .plan-wrapper{
    margin: 0 auto;
    padding: 0px 4vw;
}
.plan-inner{background: #F3F3F3}
.plan-wrapper.bg_blue{
    background: #F3F3F3;
    padding-top: 80px;
    padding-bottom: 120px;
    z-index: 999;
}
.plan-wrapper.bg_yellow{
    background: #F5F0EA;
    padding-top: 80px;
    padding-bottom: 120px;
}
.plan-inner h1{
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 2.8rem;
    font-weight: bold;
    text-align: center;
    padding-top: 26px;
}
.plan-title{
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 2.2rem;
    text-align: center;
    padding-top: 8px;
    padding-bottom: 0px;
    line-height: 1.2;
    color: #6D6D6D;
}
.plan-wrapper{
    position: relative;
    border-radius: 0px;
    padding-bottom: 80px;
}
.plan-wrapper h2{
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 1.7rem;
    font-weight: bold;
    margin: 0 auto 20px;
    text-align: center;
    border-radius: 2px;
    padding: 13px 0;
    width: 266px;
    color: #fff;
    background-color: #9ABFCF;
}
.plan-wrapper h2.yell{
    background-color: #BFA881;
}
.plan-wrapper h2 span{
    margin-right: 8px;
}
.box{
    padding: 27px 14px 40px;
    border-radius: 20px;
    background: #FEFCFC;
    box-shadow: 1px 2px 5px 2px rgba(111, 137, 145, 0.4);
}
.box.sita{
    box-shadow: 1px 2px 5px 2px rgba(150, 161, 120, 0.4);
}
/* card */
.card img{
    width: 100%;
    margin: 0 auto;
}
.s-img {
    cursor: pointer;
    max-width: 500px;
    overflow: hidden;
    width: 100%;
}
.s-img img {
height: auto;
transition: transform .6s ease; /* ゆっくり変化させる */
}
.s-img:hover img {
transform: scale(1.2); /* 拡大 */
}
.card h3{
    font-size: 2.4rem;
    font-weight: bold;
    text-align: center;
    color: #083857;
    opacity: .6;
    padding-bottom: 10px;
}
.card h3.no2{
    color: #4A280B;
    opacity: .65;
}
.card-txt{
    color: #083857;
    text-align: left;
    font-size: 1.5rem;
    padding-bottom: 43px;
    line-height: 1.35;
    padding-top: 20px;
}
.card-txt span{
    display: block;
    padding: 12px 0 13px;
}
/* imgの「上のh3」と「下のcard-text」に「padding-bottomとpadding-top」をとってimgの高さと幅を固定する */
.card-txt.no2-txt{
    color: #4A280B;
}

/* 罫の配置 */
.box.ue, .box.sita{
    position: relative;
}
.w-line-01.w-sp{
    width: 40px;
    position: absolute;
    z-index: 10;
    top: 142px;
    left: 4vw;
}
.w-line-02.w-sp{
    width: 40px;
    position: absolute;
    z-index: 10;
    bottom: 204px;
    right: 4vw;
}
.w-txt.w-sp{
    width: 220px;
    position: absolute;
    z-index: 10;
    bottom: 210px;
    right: 22vw;
}
.plan-wrapper.bg_yellow .box.sita{
    position: relative;
}
.b-line-01.b-sp{
    width: 40px;
    position: absolute;
    z-index: 10;
    top: 146px;
    left: 4vw;
}
.b-line-02.b-sp{
    width: 40px;
    position: absolute;
    z-index: 10;
    bottom: 204px;
    right: 4vw;
}
.b-txt.b-sp{
    width: 220px;
    position: absolute;
    z-index: 10;
    bottom: 200px;
    right: 22vw;
}

/* 予約バナーNo2 */
.reserve-btn{
    position: relative;
    width: 150px;
    display: block;
    cursor: pointer;    
    margin-top: 85px;
}
.reserve-btn img{    
    width: 150px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    transition: .3s;
}
.reserve-btn:hover img:nth-of-type(2){
    opacity: 0;
}


/* 幅によるcssの調整など～ */
@media screen and (min-width : 466px) and
(max-width:767px){

}