@charset "utf-8";

@media screen and (max-width: 767px) {
    body{
        min-width: 100%;
        position: relative;
    }
    

    .pc{
        display: none;
    }
    .sp{
        display: block;
    }
    

    /*-----------------------------------------------
    font
    -----------------------------------------------*/
    .fair__navTtl{
        font-size: 1.0rem;
    }
    .p-mv__subTxt_item,.nav__listTtl,.fair__tagItem,.fair__nmlTxt{
        font-size: 1.2rem;
    }
    
    .reserveBtn,.fair__subTtl_txtItem{
        font-size: 1.5rem;
    }
    .fair__mainTtl{
        font-size: 1.4rem;
        line-height: 2.4;
    }
    .p-mv__subTxt_item{
        line-height: 2.23;
    }
    /*-----------------------------------------------
    layout
    -----------------------------------------------*/
    .l-container{
        width: 100%;
    }
    /*-----------------------------------------------
    component
    -----------------------------------------------*/
    .c-secTtl{
        margin-bottom: 46px;
    }
    .c-bdr{
        padding-bottom: 3px;
    }
    /*-----------------------------------------------
    project
    -----------------------------------------------*/
    .fv{
        margin-top: 48px;
    }
    /*MV------------------------------------*/
    .pageTtl{
        width: 318px;
        top: 27px;
    }
    .navBtnWrap{
        top: 68px;
        right: 7px;
    }
    .navBtn,.navBtn.is-close{
        height: 32px;
        padding: 5px 10px;
    }
    .is-open svg{
        width: 46px;
    } 
    .mv__point{
        width: 90px;
        left: calc(14% - 39px);
        top: 20px;
    }
    .mv__imgWrap,.mv__Photo{
        height: auto;
    }
    .mv__imgItem{
        min-height: auto;
    }
    .p-mv__txt{
        width: 100%;
        top: calc(100% - 18%);
        padding: 12px 13px 13px 14%;
        height: auto;
    }
    .mv__imgWrap .slick-prev, .mv__imgWrap .slick-next{
        left: calc(85% - 48px);
    }
    .mv__imgWrap .slick-prev{
        top: calc(81% + 27px);
    }
    .mv__imgWrap .slick-next{
        top: calc(81% + 65px);
    }
    .p-mv__num{
        left: -25px;
        top: 7px;
    }
    .p-mv__num img{
        width: 10px;
    }
    .mv__subCopy{
        bottom: 86px;
    }
    .mv__imgItem:nth-of-type(1) .mv__subCopy img{
        width: 167px;
    }
    .mv__imgItem:nth-of-type(2) .mv__subCopy img{
        width: 171px;
    }
    .mv__imgItem:nth-of-type(3) .mv__subCopy img{
        width: 176px;
    }
    .mv__imgItem:nth-of-type(4) .mv__subCopy img{
        width: 164px;
    }
    .mv__imgWrap{
        margin-bottom: 45px;
    }
    .l-mv{
        margin-bottom:10px;
    }
    .fv__bnrWrap{
        text-align: center;
    }
    .fv__bnr{
        width: 86%;
        box-sizing: border-box;
        margin: auto;
    }
    .fv__bnr img{
        width: 100%;
    }
    /*feature------------------------------------*/
    .featureWrap{
        display: block;
    }
    .p-feature__ttl {
        margin-bottom: 54px;
    }
    .p-feature__ttl img{
        width: 113px;
    }
    .feature__item{
        margin-right: 0;
        margin-bottom: 75px;
        width: 85%;
    }
    
    .feature__item:last-of-type{
        margin-bottom: 0;
    }
    .feature__item:nth-of-type(2n-1){
        margin-left: 15%;
    }
    .feature__item:nth-of-type(2n){
        margin-right: 15%;
    }
    .feature__item:nth-of-type(4){
        margin-bottom: 77px;
    }
    .feature__item:nth-of-type(2n-1) .feature__num{
        left: -7.1%;
    }
    .feature__item:nth-of-type(2n) .feature__num{
        right:-8.2%;
        left: inherit;
    }
    .feature__item:nth-of-type(1) .feature__num{
        top: -28px;
    }
    .feature__item:nth-of-type(3) .feature__num,{
        top: -25px;
    }
    .feature__item:nth-of-type(5) .feature__num{
        top: -26px;
    }
    .feature__txt{
        top: -25px;
        right: 34px;
    }
    .feature__txt02,.feature__txt04{
       left: 10%;
    }
  
    /*fair------------------------------------*/
    .fair__navListWrap{
        margin-left: 5%;
        margin-right: 5%;
        margin-bottom: 47px;
    }
    .fair__navItem{
        flex-direction: column;
        padding: 10px 10px 35px 10px;
        margin-bottom:  14px;
    }
    .fair__navTxt{
        order: 2;
        width: 100%;
        margin-top: 0;
    }
    .fair__navNum img{
        width: 49px;
    }
    .fair__navPhoto{
        order: 1;
        margin-bottom: 10px;
    }
    .fair__navPhoto img{
        width: 100%;
    }
    .fair__navItem:after{
        right: inherit;
        bottom: 9px;
    }
    .fair{
        padding: 40px 0 10px;
    }
    .p-fair__ttl img{
        width: 147px;
    }
    .fair__photoWrap .slick-slide img{
        width: 100%;
    }
    
    .fair__detail{
        margin: -46px 6% 27px;
    }
    .fair__detailTxt{
        padding: 0 9% 33px;
    }
    .fair__nmlTxt{
        padding: 0;
        margin-bottom: 31px;
        text-align: justify;
    }
    .fair__ttlWrap{
        margin-bottom: 14px;
    }
    .fair__tagWrap:nth-of-type(2){
        margin-bottom: 30px;
    }
    .fair__mainTtl{
        margin-bottom: 35px;
        white-space: nowrap;
    }
    .fair__tagWrap{
        padding: 0;
        justify-content: center;
    }
    .fair__tagItem{
        max-width: 80px;
        width: 30%;
        height: 23px;
        margin-bottom: 5px;
    }
    .fair__subTtl{
        letter-spacing: .13em;
    }
    .fair__subTtl:before{
        margin-bottom: 5px;
    }
    .fair__subTtl,.fair__subTtl:before,.fair__listItem{
        background-size: 10px 2px;
    }
    .fair__subTtl{
        padding-bottom: 20px;
        margin-bottom: 20px;
        position: relative;
    }
    .fair__subTtl:nth-of-type(1) {
        padding-bottom: 40px;
    }
    .fair__subTtl_txt{
        display: block;
        position: inherit;
    }
    .fair__subTtl_txtItem{
        margin: 7px auto 0;
        position: inherit;
    }
    .fair__subTtl_eng01{
        width: 69px;
    }
    .fair__subTtl_eng02{
        width: 57px;
    }
    .fair__subTtl_icon01,.fair__subTtl_icon02{
        position: absolute;
        top: 12px;
        bottom: 0;
        margin: auto;
        right: 0;
    }
    .reserveBtn{
        width: 88%;
    }
    .fair__photoSlider .slick-prev{
        left: 10px;
    }
    .fair__photoSlider .slick-next{
        right: 10px;
    }
    .fair__pager{
        bottom: 50px;
        right: 30px;
    }
    .fair__subTtl,.fair__subTtl:before,.fair__listItem{
        background:url('../img/dot.png') bottom repeat-x;
        background-size: 5px;
    }
    .fair__listItem{
        padding-bottom: 18px;
    }
    .fair__listNum{
        padding-left: 0;
    }
    .fair__listNum img{
        margin-right: 17px!important;
    }
    .fair__navTxt .c-bdr{
        border-bottom: .99px solid #43352f;
    }
    /*モーダル------------------------------------*/
    
    .modal__content{
        display: block;
        left: inherit;
        position: inherit;
        top: 0;
        bottom:0;
        transform: inherit;
        max-width: 100%;
        width: 100%;
        margin: auto;
        padding-top: 152px;
        overflow-y: scroll;
        height: auto;
    }
    .nav__listItem{
        width: 94%;
        margin: 0 auto 59px;
        padding: 41px 17px 28px;
        opacity: 0;
        animation-name:anime3;
        animation-duration:1s; 
        animation-fill-mode: forwards;
    }
    .nav__listItem:nth-of-type(2){
        animation-delay: .3s;
    }
    .nav__listItem:nth-of-type(3){
        animation-delay: .6s;
    }
    .nav__listItem:nth-of-type(4){
        animation-delay: .9s;
    }
    
    .nav__listNum img{
        width: 47px;
    }
    .nav__listPhoto{
        width: 36%;
        top: -18px;
    }
    .nav__listPhoto img{
        width: 100%;
    }
    .nav__listNum{
        top: -20px;
    }
    .nav__listItem:nth-of-type(n+3) {
        margin-bottom: 59px;
    }
    .is-close svg{
        width: 46px;
    }
    .navBtn.is-close{
        padding: 10px;
    }

    /*デバイス------------------------------------*/

    /*-----------------------------
    animation
    -----------------------------*/
    @keyframes anime1 {
        0% {
            opacity: 0;
            transform: translateX(-50px);
        }
        50%{
            opacity: 1;
            transform: translateX(0);
        }
        90%{
            opacity: 1;
            transform: translateX(0);
        }
        100% {
            opacity:0;
            transform: translateX(20px);
        } 
    }
    @keyframes anime2 {
        0% {
            opacity: 0;
        }
        50%{
            opacity: 1;
            transform: translateY(0);
        }
        60%{
            opacity: 1;

        }
        100% {
            opacity:0;
            transform: translateY(-20px);
        } 
    }
    *:hover{
        opacity: 1;
    }
@media screen and (max-width: 769px) {
    .p-cp__wrap{
        background-image: url(../img/sp_cp-square.jpg),url(../img/sp_cp-square.jpg),url(../img/sp_cp-square.jpg),url(../img/sp_cp-square.jpg);
        background-position: left 7px top 7px,right 7px top 7px,right 7px bottom 7px,left 7px bottom 7px;
    }
    .p-cp__wrap:before{
        width: calc(100% - 12%);
        height: calc(100% - 4.6%);
/*        border: 2px dotted #9fc3e1;*/
        border-style: solid;
        border-width: 5px 5px 5px 5px;
        -moz-border-image: url(../img/sp_bdr.jpg) 11 11 11 11 repeat repeat;
        -webkit-border-image: url(../img/sp_bdr.jpg) 11 11 11 11 repeat repeat;
        -o-border-image: url(../img/sp_bdr.jpg) 11 11 11 11 repeat repeat;
        border-image: url(../img/sp_bdr.jpg) 11 11 11 11 repeat repeat;
    }
}

/* 2025.06　エリア_コンテンツ_チャペルスライド */
.typelist {
    padding: 5px 10px;
    font-size: 9px;
    line-height: 1.2;
}
.feature {
    padding: 5rem 3rem;
}
.feature h3 {
    font-size: 2.3rem;
    margin-bottom: 20px;
}
.feature p.read {
    line-height: 2;
    font-size: 1.3rem;
}
.tab-1 > label {
    font-size: 1.3rem;
}
.tab-1 > div {
    padding: 4rem 2rem 2rem 2rem;
}
.tab-1 ul li {
    padding: 0;
}
.tab-1 ul li h4 {
    font-size: 1.3rem;
    margin-bottom: 10px;
}
.fair__cate {
    font-size: 16px;
    line-height: 1.2;
}
.tab-1 ul {
    justify-content: space-between;
}
.tab-1 ul li {
    width: 46%;
    margin-bottom: 20px;
}
.tab-1 ul li p {
    font-size: 10px;
}
.priceBox .price {
    font-size: 40px;
    padding-left: 0;
}
.areaChapel h3 {
    font-size: 16px;
    margin-bottom: 16px;
}
.swiper1 {
    width: 70%;
}
.swiper-button-prev {
    left: 26px!important;
    margin-top: 0!important;
}
.swiper-button-next {
    right: 26px!important;
    margin-top: 0!important;
}
.swiper-button-prev img,
.swiper-button-next img {
    width: 12px;
}
.pickInner {
    width: 100%;
    display: block;
    margin: 0 auto;
}
.pickInner li {
    width: 70%;
    margin: 0 auto;
    margin-bottom: 30px;
}
.pickInner li p {
    line-height: 1.5;
}
.btn_area {
    width: 100%;
}
a.btn .note {
    width: 60%;
    padding: 6px 0 6px 0;
    margin-left: 0;
    left: auto;
}
.reservation_area .btn_wrapper {
    margin-bottom: 0;
}
.section__info {
    width: 100%;
}
.section__info .section__note {
    margin-top: 40px;
    margin-bottom: 30px;
    font-size: 20px;
}
.section__info .free_box {
    justify-content: space-around;
}
.section__info .free_box img.free_no {
    margin: 10px auto;
}
.section__info .free_box p {
    font-size: 14px;
    margin-bottom: 18px;
}
.section__info .free_box li {
    width: 45%;
    margin-bottom: 40px;
}
.section__info .free_box li span {
    font-size: 10px;
}
.weddingcounter {
    margin-top: 60px;
}
.weddingcounter .store_box div {
    width: 100%;
}
.weddingcounter .__lead {
    margin-bottom: 30px;
}
.weddingcounter .store_box {
    display: block;
    padding-top: 60px;
    padding-bottom: 30px;
}
.nav__listNum .nav_cate {
    font-size: 10px;
}
.nav__listNum .nav_name {
    font-size: 16px;
}