@charset "UTF-8";

/* -----------------------------------------------
 *  	     top.css
 * ----------------------------------------------- */

/* top_mainvisual_area */
article.top_mainvisual_area{
    height: 90vh;
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    background-color:rgba(00,00,00,0.1);
}

/* bg_video */
div.top_mainvisual_video_box{
    position: absolute;
    top: 0; bottom: 0; left: 0; right: 0;
    margin: auto;
    display: flex;
    justify-content: center;
    width: auto;
    z-index: -2;
    overflow: hidden;
}
div.top_mainvisual_video_box video{
    position: absolute;
    top: 0; bottom: 0; left: 50%; right: 0;
    margin: auto;
    height: 100%;
    /*width: 100%;*/
    box-sizing: border-box;
    transform: translateX(-50%);
}
div.top_mainvisual_video_box video.wide100{
    top: 0; bottom: 0; left: 0; right: 0;
    width: 100%!important;
    height: auto;
    transform: translateX(0);
}

/* bg_image */
div.top_mainvisual_image_box{
    position: absolute;
    top: 0; bottom: 0; left: 0; right: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    opacity: 1;
    transition: all 3s;
    background-image: url("/photoservice/escapeweddingphoto/top/img/top_mainvisual.jpg");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
}
/* ANIME--image不透明 */
div.top_mainvisual_image_box.off_image{
    opacity: 0;
}
div.top_mainvisual_image_box img{

}

/* logo_text */
div.top_mainvisual_text_box{
    text-align: center;
    width: 100%;
    transform: translateY(50px);
    transition: all 3s;
}
h2.top_mainvisual_heading{
    /*font-size: 46px;*/
    font-weight: normal;
    width: 500px;
    margin: 0 auto;
}
h2.top_mainvisual_heading svg{
    height: 80px;
    fill:#ffffff;
}
h2.top_mainvisual_heading br{
    display: none;
}
p.top_mainvisual_text{
    font-size: 16px;
    font-weight: normal;
    color: #ffffff;
}
/* ANIME--transform0 */
div.top_mainvisual_text_box.moved{
    transform: translateY(0);
}

/* 768px */
@media only screen and (max-width: 48em) {
    div.top_mainvisual_text_box{
        text-align: center;
        width: 96%;
        margin: 0 auto;
    }
    h2.top_mainvisual_heading{
        font-size: 36px;
    }
    p.top_mainvisual_text{
        font-size: 18px;
    }
}
/* 480px */
@media only screen and (max-width: 30em) {
    article.top_mainvisual_area{
        height: 85vh;
    }
    div.top_mainvisual_text_box{
        text-align: center;
        width: 96%;
        margin: 0 auto;
    }
    h2.top_mainvisual_heading{
        font-size: 30px;
        line-height: 1.4;
        margin: 0 0 10px 0;
        font-weight: bold;
        width: 100%;
    }
    h2.top_mainvisual_heading br{
        display: block;
    }
    p.top_mainvisual_text{
        font-size: 14px;
    }
}

/* ====================== top banner ====================== */
.top_banner_area {
    width: 80%;
    color: #ffffff;
    justify-content: center;
    display: flex;
    align-items: center;
    font-size: 1.3rem;
    cursor: pointer;
    position: absolute;
    top: 90%;
    left: 10%;
    list-style: none;
}

.top_banner_bt01 li a{
    float: left;
}

.top_banner_bt01 a{
    width: 200px;
    display: block;
    background-color: #000;
    border-radius: 5px;
    opacity: 60%;
    padding: 10px;
    margin: 0 10px;
    font-family: 'Montserrat', sans-serif;
    text-decoration: none;
    text-align: center;
    color: #fff;
    line-height: 1.5;
}

.top_banner_bt01 a:hover{
    background-color: #284f57;
    opacity: 100%;
    transition: 1s;
}

.top_banner_bt01 a > span{
    font-size: 8px;
    font-family: "Noto Sans JP", sans-serif ,"メイリオ", "Meiryo", "游ゴシック", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", sans-serif;
}

/* 480px */
@media only screen and (max-width: 30em) {
.top_banner_area {
    display: flex;
    flex-direction: column;
    top: 75%;
}

.top_banner_bt01 a{
    width: 200px;
    display: block;
    border-radius: 5px;
    opacity: 60%;
    padding: 10px;
    margin-bottom: 7px;
    font-family: 'Montserrat', sans-serif;
    text-decoration: none;
    text-align: center;
    color: #fff;
    line-height: 1.5;
}
}


/* ====================== concept_area ====================== */
article.concept_area{
}

article.concept_area p{
    text-align: center;
    margin: 20px 0;
    font-size: 16px;
    line-height: 2;
    letter-spacing: 1.8px;
}
/* 768px */
@media only screen and (max-width: 48em) {
}
/* 480px */
@media only screen and (max-width: 30em) {
    article.concept_area p{
        text-align: center;
        margin: 15px 0;
        font-size: 12px;
        line-height: 2;
        letter-spacing: 1.8px;
    }
}


/* ====================== movie_area ====================== */
article.movie_area{
    background-color: #0b1627;
}
div.movie_area_box{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}
div.movie_area_box_item{
    width: 45%;
    margin: 20px 20px;
    box-sizing: border-box;
}
div.movie_area_box_item a{
    display: block;
    text-decoration: none;
}
div.movie_area_box_item a img{
}
/* 768px */
@media only screen and (max-width: 48em) {
}
/* 480px */
@media only screen and (max-width: 30em) {
    div.movie_area_box{
        display: block;
    }
    div.movie_area_box_item{
        width: 100%;
        margin: 20px 0;
    }
}
/* ====================== service_area ====================== */
article.service_area{
}

section.how_to_order_sect{
    background-color: #cccccc;
    padding: 20px 35px 35px 35px;
    box-sizing: border-box;
}
section.how_to_order_sect h3{
    margin: 20px 0;
    font-size: 32px;
    color: #555555;
    text-align: center;
    letter-spacing: 2px;
	font-family: 'Montserrat', sans-serif;
}
section.how_to_order_sect p{
    margin: 20px 0 30px 0;
    font-size: 14px;
    color: #555555;
    text-align: center;
}

div.order_icons_box{
    display: flex;
    justify-content: space-between;
}
div.order_icon_item{
    width: 15%;
    text-align: center;
}
div.order_icon_item img{
    display: block;
    box-sizing: border-box;
    border: solid 1px #555555;
    padding: 25%;
}
div.order_icon_item span{
    display: block;
    margin: 10px 0;
    font-size: 12px;
    color: #555555;
}
/* 768px */
@media only screen and (max-width: 48em) {
}
/* 480px */
@media only screen and (max-width: 30em) {
    div.order_icons_box{
        display: flex;
        justify-content: center;
        flex-wrap: wrap;
    }
    div.order_icon_item{
        width: 30%;
        margin: 10px 5px;
    }
    div.order_icon_item span{
        font-size: 10px;
    }
}
/* ====================== photographer_area ====================== */
article.photographer_area{

}

figure.photographer_item{
    margin: 60px 0;
    padding: 8%;
    background-color: #ffffff;
    box-sizing: border-box;
    box-shadow: 0px 0px 15px rgba(0,0,0,0.3);
}
figure.photographer_item img{
}
figure.photographer_item figcaption{
}

p.photographer_lead{
    text-align: center;
    font-weight: bold;
    font-size: 20px;
}
p.photographer_text{
    text-align: center;
    font-size: 14px;
    line-height: 2;
}

#inline-wrap {
    position: relative;
    margin: 10px auto;
    max-width: 700px;
    background: #fff;
    padding: 20px;
}

#inline-wrap2 {
    position: relative;
    margin: 10px auto;
    max-width: 700px;
    background: #fff;
    padding: 20px;
}

article.creative_area{
}
section.creative_sect{
    display: flex;
    justify-content: space-between;
}
div.creative_box{
    width: 31%;
    text-align: center;
}
div.creative_box span.access_tag{
    display: block;
    margin: 10px 0;
    font-size: 20px;
    font-family: 'Montserrat', sans-serif;
}
div.creative_box span.fair_tag{
    display: block;
    margin: 10px 0;
    font-size: 14px;
    color: #fff;
    background-color: #000;
}
div.creative_box img{
    margin: 0 0 10px 0;
}
div.creative_box h3{
    margin: 0 0 10px 0;
    font-size: 16px;
}
div.creative_box p{
    margin: 0 0 10px 0;
    font-size: 12px;
}
/* 768px */
@media only screen and (max-width: 48em) {
}
/* 480px */
@media only screen and (max-width: 30em) {
section.creative_sect{
    display: block;
    }
div.creative_box{
    width: 100%;
    margin-bottom: 50px;
    }
}

/* 768px */
@media only screen and (max-width: 48em) {
}
/* 480px */
@media only screen and (max-width: 30em) {
    figure.photographer_item{
        margin: 40px 0;
        padding: 4%;
    }
    p.photographer_lead{
        font-size: 16px;
    }
    p.photographer_text{
        font-size: 12px;
    }
}
/* ====================== plan_area ====================== */
article.plan_area{
    background-color: #0b1627;
}
article.plan_area02{
    background-color: #f1f1f1;
}
section.plan_inst_sect{
    padding: 80px 0;
}
section.plan_inst_sect h3.plan_inst_title{
    margin: 0 0 20px 0;
    text-align: center;
    color: #fff;
}
section.plan_inst_sect h3.plan_inst_title span{
    display: block;
    font-family: 'Montserrat', sans-serif;
    font-size: 26px;
    letter-spacing: 2px;
    font-weight: normal;
}
section.plan_inst_sect p.plan_inst_txt{
    font-weight: normal;
    text-align: center;
    color: #fff;
}
section.plan_inst_sect02 h3.plan_inst_title{
    margin: 0 0 20px 0;
    text-align: center;
    color: #000;
}
section.plan_inst_sect02 h3.plan_inst_title span{
    display: block;
    font-family: "Noto Sans JP", sans-serif ,"メイリオ", "Meiryo", "游ゴシック", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", sans-serif;
    font-size: 26px;
    letter-spacing: 2px;
    font-weight: normal;
}
section.plan_inst_sect02 p.plan_inst_txt{
    font-weight: normal;
    text-align: center;
    color: #000;
}
.plan_number{
    display: block;
    width: 100px;
    margin: 0 auto 5px;
    padding: 3px;
    font-size: 14px;
    font-weight: normal;
    color:#fff;
    letter-spacing: 2px;
    text-align: center;
    border:1px solid #fff;
}

.openplan_number{
    display: block;
    width: 300px;
    margin: 0 auto 5px;
    padding: 3px;
    font-size: 14px;
    font-weight: normal;
    color:#000;
    letter-spacing: 2px;
    text-align: center;
    border:1px solid #000;
}

/*大元プランの説明*/
div.plan_inst_box{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 30px auto;
    color: #fff;
}
div.plan_inst_box div.inst_inner_image{
    width: 53%;
    margin-bottom: 20px;
}
div.plan_inst_box div.inst_inner_text{
    width: 43%;
}
div.plan_inst_box div.inst_inner_text ul{
    list-style: none;
}

div.plan_inst_box div.inst_inner_text span{
    display: block;
    font-size: 24px;
}
/* コンテンツアイコンリスト */
ul.content_icon_list{
    list-style: none;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
}
ul.content_icon_list li{
    width: calc(100%/6);
    margin: 0;
    padding: 5px;
    box-sizing: border-box;
    font-size: 9px;
    text-align: center;
    line-height: 1.1;
}
ul.content_icon_list li img{
    display: block;
    width: 85%;
    margin: 0 auto 3px;
}

/* オープニングプラン　アイコンリスト */

section.opening_sect{
    background-color: #cccccc;
    padding: 10px;
    box-sizing: border-box;
}
section.opening_sect h3{
    margin: 20px 0;
    font-size: 14px;
    color: #555555;
    text-align: center;
    letter-spacing: 2px;
}
section.opening_sect p{
    margin: 20px 0 30px 0;
    font-size: 14px;
    color: #555555;
    text-align: center;
}

ul.plan_icon_list{
    list-style: none;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
}
ul.plan_icon_list li{
    width: calc(100%/5);
    margin: 0;
    padding: 5px;
    box-sizing: border-box;
    font-size: 9px;
    text-align: center;
    line-height: 1.1;
}
ul.plan_icon_list li img{
    display: block;
    width: 45%;
    margin: 0 auto 3px;
}
ul.plan_icon_list li{
    color: #000;
}


/*個々のプラン*/
section.plan_indivisual_box{
    background-color: #ffffff;
    padding: 10px 0 20px;
    text-align: center;
}
section.plan_indivisual_box h4{
    text-align: center;
    font-size: 16px;
    padding: 10px 0;
}

section.plan_indivisual_box h4 > span{
    display: block;
    width: 150px;
    margin: 0 auto 5px;
    padding: 3px;
    font-size: 14px;
    font-weight: normal;
    color: #fff;
    letter-spacing: 2px;
    text-align: center;
    background-color: #bd0505;
    border-radius: 5px;
}

/* 480px */
@media only screen and (max-width: 30em) {
section.plan_indivisual_box h4{
    text-align: center;
    font-size: 14px;
    padding: 10px 0;
}

section.plan_indivisual_box h4 > span{
    display: block;
    margin: 0 auto 5px;
    padding: 3px;
    font-size: 14px;
    font-weight: normal;
    color: #fff;
    letter-spacing: 2px;
    text-align: center;
    background-color: #bd0505;
}
}

section.plan_indivisual_box p{
    line-height: 2;
    padding: 0 30px;
}
span.plan_price{
    font-size: 14px;
    font-weight: bold;
}
span.plan_price > span{
    margin-left:10px;
    font-size: 12px;
    font-weight: normal;
}

.plan_price02{
    font-size: 18px;
    font-weight: bold;
}
/* 480px */
@media only screen and (max-width: 30em) {
.plan_price02{
    font-size: 16px;
    font-weight: bold;
    text-align: center;
}
}



/* 768px */
@media only screen and (max-width: 48em) {
}
/* 480px */
@media only screen and (max-width: 30em) {
    div.plan_inst_box{
        display: block;
    }
    div.plan_inst_box div.inst_inner_image{
        width: 100%;
    }
    div.plan_inst_box div.inst_inner_text{
        width: 100%;
    }
}
/* ====================== trip_area ====================== */
article.trip_area{
}

article.trip_area p.trip_start{
    margin: 20px 0;
    font-size: 32px;
    color: #ffffff;
    text-align: center;
    letter-spacing: 2px;
	font-family: 'Montserrat', sans-serif;
}
article.trip_area p.trip_finish{
    margin: 20px 0;
    font-size: 32px;
    color: #ffffff;
    text-align: center;
    letter-spacing: 2px;
	font-family: 'Montserrat', sans-serif;
}
section.trip_photo_box{
    padding: 50px 0;
    margin: 50px 0 0 0;
    background-image: url(/photoservice/escapeweddingphoto/common/img/bg_oneday_top.jpg),url(/photoservice/escapeweddingphoto/common/img/bg_oneday_bottom.jpg);
    background-color: #7daacb;
    background-repeat: no-repeat;
    background-position: top center, bottom center;
    background-size: contain;
}
figure.trip_photo_item{
    margin: 0 0 60px 0;
    padding: 2%;
    background-color: #ffffff;
    box-sizing: border-box;
    box-shadow: 0px 0px 15px rgba(0,0,0,0.3);
}
figure.trip_photo_item img{
}
figure.trip_photo_item figcaption{
}
/* 768px */
@media only screen and (max-width: 48em) {
}
/* 480px */
@media only screen and (max-width: 30em) {
    figure.trip_photo_item{
        max-width: 90%;
        margin: 0 auto 40px;
        padding: 4%;
    }
}
/* ====================== gallery_area [[[LP状態では不使用]]] ====================== */
article.gallery_area{
    background-color: #0b1627;
}

section.gallery_sect{
}
ul#filterBtnList{
}
div.area_select_box{
    text-align: center;
}
div.area_select_box h3{
    display: inline-block;
    color: #ffffff;
    font-size: 12px;
    font-family: 'Montserrat', sans-serif;
    font-weight: normal;
}
ul#filterBtnList{
    display: inline-block;
}
ul#filterBtnList li{
    position: relative;
    display: inline-block;
    width: 300px;
    margin: 0 6px 10px ;
    color: #ffffff;
    text-align: center;
    border:solid 1px #ffffff;
    border-radius: 20px;
    font-family: 'Montserrat', sans-serif;
    cursor: pointer;
}
ul#filterBtnList li::before{
    position: absolute;
    display: block;
    content: "";
    width: 6px;
    height: 6px;
    left: 10px; top:0; bottom:0;
    margin: auto;
    border-left: 1px solid #ffffff;
    border-bottom: 1px solid #ffffff;
    transform: rotate(-45deg) translateY(-2px);
}

ul.photo_list{
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
    list-style: none;
    margin: 30px auto;
    padding: 0;
}
ul.photo_list li{
    display: block;
    height: 140px;
    width: calc(100%/3 - 20px);
    margin: 10px;
}
ul.photo_list li a{
    display: block;
    text-decoration: none;
    width: 100%;
    height: 100%;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
}
ul.photo_list li a img{
    display: none;
}
/* 768px */
@media only screen and (max-width: 48em) {
}
/* 480px */
@media only screen and (max-width: 30em) {
}
/* ====================== salon_area ====================== */
article.salon_area{
}
section.salon_sect{
    display: flex;
    justify-content: space-between;
}
div.salon_box{
/*3分割の時 */
/*    width: 31%; */
/*2分割の時 */
    width: 48%; 
    
    text-align: center;
}
div.salon_box span.access_tag{
    display: block;
    margin: 10px 0;
    font-size: 20px;
    font-family: 'Montserrat', sans-serif;
}
div.salon_box span.fair_tag{
    display: block;
    margin: 15px 0;
    padding: 8px 0;
    font-size: 14px;
    color: #fff;
    background-color: #7daacb;
}
div.salon_box img{
    margin: 0 0 10px 0;
}
div.salon_box h3{
    margin: 0 0 10px 0;
    font-size: 16px;
}
div.salon_box p{
    margin: 0 0 10px 0;
    font-size: 12px;
}
/* 768px */
@media only screen and (max-width: 48em) {
}
/* 480px */
@media only screen and (max-width: 30em) {
    section.salon_sect{
        display: block;
    }
    div.salon_box{
        width: 100%;
        margin-bottom: 50px;
    }
}

/* Fair Banner */
/*
.fair_banner_area{
position: fixed; /* 要素の位置を固定する */
/*bottom: 0; /* 基準の位置を画面の一番下に指定する */
/*right: 0; /* 基準の位置を画面の一番右に指定する */
/*width: 450px;
z-index: 999;
margin: 0 10px 10px 0 ;
}
.fair_banner_area a {
    display: block;
    margin: auto;
    background-color: #f9f4eb;
    text-align: center;
    border: 2px solid #BCA475;
}
.fair_icon{
background-color: #000;
color: #fff;
padding: 2px ;
text-align: center;
}
.fair_icon2{
background-color: #284f57;
color: #fff;
padding: 2px ;
text-align: center;
border-radius: 5px;
width: 200px;
margin: auto;
}
h2.fairBannerArea_title{
    font-size: 20px;
    font-weight: normal;
    margin-bottom: 5px;
}
h2.fairBannerArea_title span{
    font-size: 16px;
}
.fair_banner_area_txt {
    float: right;
    padding: 10px;
    width: 70%;
}
.fair_banner_area_img {
    width: 30%;
}

/* 480px */
/*@media only screen and (max-width: 30em) {
.fair_banner_area {
    width: 100%;
    padding: 0 ;
    margin: 0 0 0 0 ;
}
.fair_banner_area a{
}
h2.fairBannerArea_title{
    font-size: 16px;
    margin-bottom: 5px;
}
h2.fairBannerArea_title span{
    font-size: 12px;
}
}
/* Fair Banner */



/* ======================DRESS====================== */
.livelove_logo{
display: block;
width: 100px;
margin: auto;
}


// モーダルが開いたら、bodyにfixedを付与
document.body.style.position = 'fixed';
document.body.style.top = `-${window.scrollY}px`;

// モーダルが閉じられたら、スクロールのトップを取得してbodyに
document.body.style.position = '';
document.body.style.top = '';


/* ======================parts====================== */
/* 1400px */
@media only screen and (max-width: 87.5em) {
}
/* 1024px */
@media only screen and (max-width: 64em) {
}
/* 960px */
@media only screen and (max-width: 60em) {
}
/* 768px */
@media only screen and (max-width: 48em) {
}
/* 720px */
@media only screen and (max-width: 45em) {
}
/* 600px */
@media only screen and (max-width: 37.5em) {
}
/* 480px */
@media only screen and (max-width: 30em) {
}
/* 320px */
@media only screen and (max-width: 20em) {
}