@charset "utf-8";

/*--------------------------------------

reset

----------------------------------------*/
@scope (#fuwel-wrapper) {
    html, body, div, span, object, iframe,
    h1, h2, h3, h4, h5, h6, p, blockquote, pre,
    abbr, address, cite, code,
    del, dfn, em, img, ins, kbd, q, samp,
    small, strong, sub, sup, var,
    b, i,
    dl, dt, dd, ol, ul, li,
    fieldset, form, label, legend,button,
    table, caption, tbody, tfoot, thead, tr, th, td,
    article, aside, canvas, details, figcaption, figure,
    footer, header, hgroup, menu, nav, section, summary,
    time, mark, audio, video {
        margin:0;
        padding:0;
        border:0;
        outline:0;
        box-sizing: border-box;
        -webkit-text-size-adjust: 100%; /* for bugfix on iOS*/
    }
    html, body {
        -webkit-overflow-scrolling: touch;
        /* overflow: hidden; */
    }
    body{
        font-family:  Verdana,'Hiragino Kaku Gothic ProN',"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", Arial, sans-serif;
        position: relative;
    }
    body .mincho {
        font-family: "Sitka Heading", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    }
    p{ word-wrap: break-word; }
    ul , li { list-style:none; list-style-type: none; }
    img { border:none; vertical-align: bottom; }
    a { outline:none; text-decoration:none; }
    a,
    a img,
    .hover-opa a {
        -webkit-transition: all 0.2s ease-in-out;
        transition: all 0.2s ease-in-out;
    }
    a:hover img,
    .hover-opa a:hover {
        opacity:0.7 !important;
    }
    /* form */
    input,
    textarea,
    select {
        outline: none;
        border-radius: 0;
    }
    input[type="text"], input[type="email"], input[type="password"], textarea {
        -webkit-appearance: none;
    }
    button {
        border: none;
        cursor: pointer;
    }
    textarea { resize:none; }

    /*table*/
    table{
        border-collapse: collapse;
    }

}

/*　PC・SP切り替え　*/
.pc{ display: block; }
.pc-inline { display: inline; }
.sp{ display: none;}
.sp-inline { display: none; }

/*--------------------------------------------------------

common

--------------------------------------------------------*/

.pickup-fair-box {
    background: #F9F9F7;
    width: 100%;
    height: 100%;
    overflow: hidden;
    padding: 20px 0px;
}
.pickup-fair-box-inner {
    width: 1008px;
    overflow: hidden;
    margin: 0 auto;
    padding: 0 24px;
}
.other-fair-box {
    width: 1008px;
    overflow: hidden;
    margin: 0 auto;
    padding: 0 24px;
}
.detail-fair-box {
    width: 1008px;
    overflow: hidden;
    margin: 0 auto;
}
#bridal-fair{
    /* width: 1008px; */
    width: 100%;
    overflow: hidden;
    margin: 0 auto;
}
#bridal-fair .title{
    /* margin: 35px auto; */
    margin: 28px auto 8px;
    text-align: center;
    color: #707070;
    /* font-size: 30px; */
    font-size: 24px;
    font-weight: bold;
    line-height: 1;
}
#bridal-fair .title-jp{
    margin: 0 auto 28px;
    text-align: center;
    color: #CAB68B;
    font-size: 12px;
}

/*　タブ設定　*/
#bridal-fair .tabs .horizontal{
    width: 100%;
    overflow: hidden;
    /* margin: 0 auto 40px; */
    margin: 0 auto 32px;
}
#bridal-fair .tabs .horizontal li{
    /* width: 418px; */
    width: 334px;
    float: left;
    text-align: center;
    /* font-size: 20px; */
    font-size: 16px;
    line-height: 1;
    color: #707070;
    background: #e2e2e2;
    position: relative;
    border: 1px solid #707070;
}
#bridal-fair .tabs .horizontal li:not(:last-child){
    margin-right: 2px;
}
#bridal-fair .tabs .horizontal li::before{
    content: "";
    position: absolute;
    top: 0px;
    right: 0px;
    border-width: 0 16px 16px 0;
    border-style: solid;
    border-color: #707070 #707070 #e2e2e2 #e2e2e2;
    background: #e2e2e2;
    display: block;
    width: 0;
}
#bridal-fair .tabs .horizontal li::after{
    content: "";
    position: absolute;
    top: -1px;
    right: -2px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 18px 18px 0;
    border-color: transparent #fff transparent transparent;
}
#bridal-fair .tabs .horizontal li a{
    /* padding: 10px; */
    padding: 8px;
    display: block;
    color: #707070;
}
#bridal-fair .tabs .horizontal li:hover {
    background: #000;
}
#bridal-fair .tabs .horizontal li a:hover{
    color: #fff;
}
#bridal-fair .tabs .horizontal li:hover ,
#bridal-fair .tabs .horizontal li.active {
    background: #000;
}
#bridal-fair .tabs .horizontal li:hover::before ,
#bridal-fair .tabs .horizontal li.active::before{
    border-color: #fff #fff #000 #000;
    background: #000;
}
#bridal-fair .tabs .horizontal li.active a {
    color: #fff;
}
#bridal-fair .tabs .horizontal li div.small{
    /* font-size: 12px; */
    font-size: 9.6px;
    line-height: 1;
    /* padding-top: 5px; */
    padding-top: 4px;
}

/* フェアのリスト（共通） */
.bridal-fair-list{
    width: 100%;
    /* min-height: 350px; */
    min-height: 280px;
    border: 1px solid #e2e2e2;
    /* box-shadow:0px 0px 10px 0px #b2afaa; */
    box-shadow:0px 0px 8px 0px #b2afaa;
    /* padding: 15px; */
    padding: 12px;
    /* margin: 0 auto 25px; */
    margin: 0 auto 20px;
    background: #fff;
    overflow: hidden;
    position: relative;
}

.bridal-fair-list-img .slick-dots{
    /* bottom:-30px; */
    bottom:-24px;
}
.bridal-fair-list-img .slick-dots li {
    /* margin:0 5px; */
    margin:0 4px;
}
.bridal-fair-list-img .slick-dots button {
    background-color:#fff;
    border-radius: 50px;border: 1px solid #707070;
}
.bridal-fair-list-img .slick-dots .slick-active button {
    background-color:#707070;
}
.bridal-fair-list-icon ul{
    float: left;
    /* margin-right: 20px; */
    margin-right: 16px;
}
.bridal-fair-list-icon ul li{
    display: inline-block;
    background: #EEEEEE;
    border:1px solid #EEEEEE;
    color: #d1d2d8;
    padding: 2px 8px;
    margin-bottom: 4px;
}
.bridal-fair-list-icon ul li.exist-tag {
    background: #fff;
    border: 1px solid #B55245;
    color: #B55245;
    white-space: nowrap;
}
.bridal-fair-list-icon .bridal-fair-list-hour{
    float: left;
    /* padding: 2px; */
    padding: 1.6px;
}

.bridal-fair-list-title{
    margin: 0 auto 8px;
}
.pickup-fair .bridal-fair-list-title {
    margin: 0 auto 20px;
}
.bridal-fair-halflist .pickup-fair .bridal-fair-list-title {
    margin: 0 auto 5px;
}
.bridal-fair-list-title h3{
    font-size: 16px;
    margin-bottom: 7px;
    /* color: #333; */
    color: #B55245;
    font-weight: normal;
}
.bridal-fair-list-title h4{
    color: #CAB68B;
    /* font-size: 20px; */
    font-size: 15px;
    font-weight: normal;
    /* margin: 0 0 10px; */
    margin: 0 0 8px;
}
.bridal-fair-list-title p{
    /* font-size: 16px; */
    font-size: 12.8px;
    /* line-height: 24px; */
    line-height: 19.2px;
}
.bridal-fair-list-title p.bridal-fair-list-hour{
    font-size: 12px;
    line-height: 19.2px;
    display: inline-block;
    margin-bottom: 8px;
}

.bridal-fair-list-title .bridal-fair-list-time {
    /* color: #B55245; */
    position: relative;
    padding-left: 60px;
    padding-right: 10px;
    font-size: 12px;
    display: inline-block;
}
.bridal-fair-list-title .part-block {
    display: inline-block;
}
.bridal-fair-list-title .bridal-fair-list-time .bridal-fair-list-time-label {
    position: absolute;
    top: 0px;
    left: 0px;
}
.bridal-fair-list-title .bridal-fair-list-time .bridal-fair-list-time-parts span.time-block {
    width: 45px;
    display: inline-block;
    white-space: nowrap;
    margin-left: 5px;
}
.bridal-fair-list-title .bridal-fair-list-tinfo .bridal-fair-list-time .bridal-fair-list-time-parts span.time-block {
    width: 45px;
    white-space: nowrap;
}
.bridal-fair-list-title .bridal-fair-list-time .bridal-fair-list-time-parts span.time-block.no-slash,
.bridal-fair-list-title .bridal-fair-list-tinfo .bridal-fair-list-time .bridal-fair-list-time-parts span.time-block.no-slash {
    width: 35px;
}
.bridal-fair-list-cont{
    overflow: hidden;
}
.bridal-fair-list-cont .bridal-fair-list-join{
    /* width: 420px; */
    width: 336px;
    float: left;
}
.bridal-fair-list-cont .bridal-fair-list-join h3{
    /* font-size: 16px; */
    font-size: 12.8px;
    font-weight: normal;
    text-align: center;
    border-bottom: 1px solid #000;
    /* padding-bottom: 5px; */
    padding-bottom: 4px;
    /* margin-bottom: 5px; */
    margin-bottom: 4px;
}
.bridal-fair-list-cont .bridal-fair-list-join p{
    /* font-size: 14px; */
    font-size: 11.2px;
    /* line-height: 20px; */
    line-height: 16px;
    /* min-height: 60px; */
    min-height: 48px;
}
.bridal-fair-list-cont .bridal-fair-list-dt{
    width: 300px;
    float: right;
}
.bridal-fair-list-cont .bridal-fair-list-dt h3{
    background-image: url("../img/fair-date-icon1.png") , url("../img/fair-date-icon2.png");
    background-repeat: no-repeat , no-repeat;
    background-position: left , right;
    display: inline;
    font-size: 12px;
    padding: 0 24px;
    margin-bottom: 5.6px;
}
.bridal-fair-list-cont .bridal-fair-list-dt p{
    /* font-size: 14px; */
    font-size: 11.2px;
    /* line-height: 24px; */
    line-height: 19.2px;
    /* margin-bottom: 7px; */
    margin-bottom: 5.6px;
}
.bridal-fair-list-cont .bridal-fair-list-tinfo {
    /* font-size: 14px; */
    font-size: 11.2px;
}
.bridal-fair-list-more{
    display: inline-block;
    padding-top: 0px;
}
.bridal-fair-list-more a{
    width: 130px;
    font-size: 13px;
    display: block;
    border: 1px solid #5e7441;
    color: #5e7441;
    text-align: center;
    padding: 5px 0;
}
.bridal-fair-list-more a:hover{
    opacity: 0.6;
}
.bridal-fair-list-reserve {
    display: inline-block;
    padding-top: 0px;
}
.bridal-fair-list-reserve a{
    width: 160px;
    font-size: 13px;
    display: block;
    border: 1px solid #5e7441;
    background: #5e7441;
    color: #fff;
    text-align: center;
    padding: 5px 0;
}
.bridal-fair-list-reserve a:hover{
    opacity: 0.6;
}

/*1列のフェアのリスト*/
.bridal-fair-list-icon{
    overflow: hidden;
    /* font-size: 12px; */
    font-size: 9.6px;
    line-height: 1;
    /* margin: 0 0 10px; */
    margin: 0 0 6px;
}
.bridal-fair-list-img{
    width: 300px;
    height: 225px;
    float: left;
}
.bridal-fair-list-img .slick-list {
    height: 100%;
}
.bridal-fair-list-img .slick-list .slick-track {
    height: 100%;
}
.bridal-fair-list-img .slick-list .slick-track .slick-slide {
    height: 100%;
}
.bridal-fair-list-img .slick-list .slick-track .slick-slide img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.bridal-fair-list-box{
    /* width: 840px; */
    width: 672px;
    float: right;
    /* padding-bottom: 50px; */
    /* padding-bottom: 40px; */
    padding-bottom: 10px;
}


/* 2列のフェアのリスト */

.bridal-fair-halflist{
    overflow: hidden;
    display: flex;
}

.bridal-fair-halflist .bridal-fair-list{
    /* width: 590px; */
    width: 472px;
    /* padding: 15px 15px 30px; */
    padding: 12px 12px 24px;
    flex-grow: 1;
}
.bridal-fair-halflist .bridal-fair-list:nth-child(2n){
    /* margin-left: 20px; */
    margin-left: 16px;
}
.bridal-fair-halflist .bridal-fair-list-img{
    /* width: 250px;
    height: 250px; */
    width: 200px;
    height: 200px;
}
.bridal-fair-halflist .bridal-fair-list-box{
    /* width: 295px; */
    width: 220px;
}
.bridal-fair-halflist .bridal-fair-list-icon{
    /* margin: 0 0 15px; */
    margin: 0 0 12px;
}
.bridal-fair-halflist .bridal-fair-list-icon ul{
}

.bridal-fair-halflist .bridal-fair-list-title {
    min-height: 0;
}
.bridal-fair-halflist .bridal-fair-list-title h3{
    font-size: 15px;
    margin-bottom: 8px;
}
.bridal-fair-halflist .bridal-fair-list-title h4{
    font-size: 12.8px;
    margin: 0;
}
.bridal-fair-halflist .bridal-fair-list-cont .bridal-fair-list-dt{
    width: 100%;
    float: none;
}
.bridal-fair-halflist .bridal-fair-list-cont .bridal-fair-list-time .bridal-fair-list-time-parts span {
    width: 45px;
    white-space: nowrap;
}

.bridal-fair-prev-hour{
    /* font-size: 16px; */
    font-size: 12.8px;
    float: left;
    position: relative;
    /* top: 36px; */
    top: 28.8px;
}
.bridal-fair-next-hour{
    text-align: right;
    /* font-size: 16px; */
    font-size: 12.8px;
    /* height: 35px; */
    height: 28px;
    border-top: 1px solid #b2afaa;
    /* margin: 20px 0 40px; */
    margin: 16px 0 32px;
    clear: both;
}
.bridal-fair-next-hour span, .bridal-fair-prev-hour span{
    display: block;
    color: #707070;
    cursor: pointer;
}
.bridal-fair-next-hour span {
    /* background: url("../img/next.png") no-repeat right 10px top 11px; */
    background: url("../img/next.png") no-repeat right 8px top 8.8px;
    /* padding: 10px 40px 0 0; */
    padding: 8px 32px 0 0;
}
.bridal-fair-prev-hour span {
    /* background: url("../img/prev.png") no-repeat left 10px top 11px; */
    background: url("../img/prev.png") no-repeat left 8px top 8.8px;
    /* padding: 10px 0 0 40px; */
    padding: 8px 0 0 32px;
}
.bridal-fair-next-hour span:hover, .bridal-fair-prev-hour span:hover {
    color: #B55245;
}

/* 日付付きフェアのリスト */
.bridal-fair-list-date-box{
    padding: 0;
    display: table;
    table-layout: fixed;
}
.bridal-fair-list-date-box.hide {
    display: none;
}
.bridal-fair-list-date-box .bridal-fair-list-date{
    /* width: 120px; */
    width: 96px;
    /* font-size: 30px; */
    font-size: 22px;
    text-align: center;
    background: #F9F9F7;
    color: #707070;
    /* border-right: 1px solid #b2afaa; */
    display: table-cell;
    vertical-align: top;
    padding-top: 30px;
}
@media screen and (min-width:769px){
    .bridal-fair-list-date-box .bridal-fair-list-date.sp{
        display: none;
    }
}
.bridal-fair-list-date-box .bridal-fair-list-date.Sun,
.bridal-fair-list-date-box .bridal-fair-list-date.holiday,
#bridal-fair-someday .bridal-fair-list-date.Sun,
#bridal-fair-someday .bridal-fair-list-date.holiday{
    /* background: #ffbeb8; */
    color: #B55245;
}
.bridal-fair-list-date-box .bridal-fair-list-date.Sat,
#bridal-fair-someday .bridal-fair-list-date.Sat{
    /* background: #c2e3ec; */
    color: #2a7fb9;
}
.bridal-fair-list-date-box .bridal-fair-list-date span.date-D{
    /* font-size: 20px; */
    font-size: 16px;
}
.bridal-fair-list-date-box .bridal-fair-list-wrap{
    width: 100%;
    float: none;
}
.bridal-fair-list-dcont{
    border-top: 1px solid #e2e2e2;
    border-right: 1px solid #e2e2e2;
    overflow: hidden;
    /* min-height: 335px; */
    min-height: 268px;
    position: relative;
}
.bridal-fair-list-dcont.hide {
    display: none;
}
.bridal-fair-list-dcont:not(.hide) ~ :not(.hide) {
    display: none;
}
.bridal-fair-list-dcont:not(.hide) ~ :not(.hide).shown {
    display: block;
}
.bridal-fair-list-other{
    visibility: hidden;
    height: 0;
}
.bridal-fair-list-other.open{
    visibility: visible;
    height: auto;
}
.bridal-fair-list-date-box .bridal-fair-list-img{
    width: 300px;
}

.bridal-fair-list-date-box .bridal-fair-list-box{
    width: calc(100% - 300px); /* 画像エリアのwidth分引く (300px) */
    padding: 7px 10px;
}

.bridal-fair-list-date-box .bridal-fair-list-icon ul{
}

.bridal-fair-list-date-box .bridal-fair-list-title h3{
}

.bridal-fair-other-more{
    clear: both;
    text-align: center;
    background: #F9F9F7;
    color: #707070;
    font-size: 15px;
    line-height: 1;
    /* padding: 15px 0; */
    padding: 12px 0;
    position: relative;
    cursor: pointer;
}
.bridal-fair-other-more:after{
    content: "＋";
}
.bridal-fair-other-close{
    clear: both;
    display: none;
    text-align: center;
    background: #F9F9F7;
    color: #707070;
    font-size: 15px;
    line-height: 1;
    /* padding: 15px 0; */
    padding: 12px 0;
    position: relative;
    cursor: pointer;
}
.bridal-fair-other-close:after{
    content: "―";
}

/* 相談会・資料請求ボタン */
.bridal-fair-contact{
    /* width: 640px; */
    width: 512px;
    /* margin: 60px auto; */
    margin: 48px auto;
    -webkit-display: flex;
    -moz-display: flex;
    -ms-display: flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: space-between;
    -moz-justify-content: space-between;
    -ms-justify-content: space-between;
    justify-content: space-between;
}
.bridal-fair-contact li{
    /* width: 300px; */
    width: 240px;
    text-align: center;
    -webkit-display: flex;
    -moz-display: flex;
    -ms-display: flex;
    display: flex;
    -webkit-align-items: center;
    -moz-align-items: center;
    -ms-align-items: center;
    align-items: center;
    cursor: pointer;
}
.bridal-fair-contact li:hover{
    opacity: 0.8;
}
.bridal-fair-contact li a{
    width: 100%;
    color: #fff;
    display: block;
    /* padding: 5px 0; */
    padding: 4px 0;
    display: block;
    /* height: 60px; */
    height: 48px;
    box-sizing: border-box;
    font-size: 12px;
}
.bridal-fair-contact li.btn-trip a {
    background: #CAB68B;
    /* padding-top: 6px; */
    padding-top: 6px;
}
.bridal-fair-contact li.btn-inq a {
    color: #CAB68B;
    border: 1px solid #CAB68B;
    /* padding-top: 17px; */
    padding-top: 14px;
}

/* 小見出し */
.bridal-fair-subttl{
    font-size: 18px;
    color: #707070;
    border-bottom: 1px solid;
    /* margin: 0 auto 15px; */
    margin: 0 auto 12px;
    /* padding: 0 0 10px 30px; */
    padding: 0 0 8px 24px;
}

/* total fair count */
/* .total-fair-count {
    font-size: 18px;
    color: #707070;
    border-bottom: 1px solid;
    margin: 0 auto 30px;
    padding: 0 0 8px 24px;
}
.total-fair-count span {
    font-size: 24px;
    color: #707070;
} */


/* コンセプト */
.bridal-fair-concept{
    /* padding-left:20px; */
    padding-left: 16px;
    /* margin: 0 auto 40px; */
    margin: 0 auto 32px;
}
.bridal-fair-concept form {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: -moz-flex;
    display: flex;
    -webkit-box-lines: multiple;
    -moz-box-lines: multiple;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.bridal-fair-concept input[type="checkbox"]{
    display: none;
}
@media screen and (min-width:769px) {
    .bridal-fair-concept .checkbox:hover {
        background: #FFFFF3;
        color: #E0CEA3;
        opacity: 0.7;
        -webkit-transition: all 0.2s ease-in-out;
        transition: all 0.2s ease-in-out;
    }
}
.bridal-fair-concept .checkbox {
    width: 30%;
    box-sizing: border-box;
    color: #707070;
    -webkit-transition: background-color 0.2s linear;
    transition: background-color 0.2s linear;
    position: relative;
    display: inline-block;
    margin: 0 10px 10px 0;
    padding: 10px 15px;
    font-size: 12px;
    vertical-align: middle;
    text-align: center;
    cursor: pointer;
    background: #fff;
    border: 1px solid #e2e2e2;
    text-shadow: none;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center; /* 縦方向中央揃え（Safari用） */
    align-items: center; /* 縦方向中央揃え */
    -webkit-justify-content: center; /* 横方向中央揃え（Safari用） */
    justify-content: center; /* 横方向中央揃え */
}
.bridal-fair-concept input[type="checkbox"]:checked + label {
    background-color: #FFFFF3;
    color: #C9A966;
}
/* フェアコンテンツ(フェア詳細) */
.bridal-fair-content-tag form {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: -moz-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.bridal-fair-content-tag input[type="radio"]{
    display: none;
}
@media screen and (min-width:769px) {
    .bridal-fair-content-tag .radio:hover {
        background: #FFFFF3;
        color: #E0CEA3;
        opacity: 0.7;
        -webkit-transition: all 0.2s ease-in-out;
        transition: all 0.2s ease-in-out;
    }
}
.bridal-fair-content-tag .radio {
    /* width: 100px; */
    box-sizing: border-box;
    color: #707070;
    -webkit-transition: background-color 0.2s linear;
    transition: background-color 0.2s linear;
    position: relative;
    display: inline-block;
    margin: 0 15px 15px 0;
    padding: 10px 30px;
    font-size: 12px;
    vertical-align: middle;
    text-align: center;
    cursor: pointer;
    background: #fff;
    border: 1px solid #e2e2e2;
    text-shadow: none;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center; /* 縦方向中央揃え（Safari用） */
    align-items: center; /* 縦方向中央揃え */
    -webkit-justify-content: center; /* 横方向中央揃え（Safari用） */
    justify-content: center; /* 横方向中央揃え */
}
.bridal-fair-content-tag input[type="radio"]:checked + label {
    background-color: #FFFFF3;
    color: #C9A966;
}
@media screen and (min-width:769px) {
    #bridal-fair-content figure{
        width: 300px;
        height: 300px
    }
}
#bridal-fair-content figure img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
#bridal-fair-content figure.noimage {
    background-color: #fff;
    opacity: 0.5;
    height: 300px;
}
.bridal-fair-content-detail {
    width: 100%;
    position: relative;
    padding: 0 30px;
    overflow: hidden;
}
.bridal-fair-content-detail .bridal-fair-content-detail-slider {
    width: 200%;
    display: flex;
}
.bridal-fair-content-detail li {
    width: 50%;
    flex-basis: 50%;
    -webkit-display: flex;
    -moz-display: flex;
    -ms-display: flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: space-between;
    -moz-justify-content: space-between;
    -ms-justify-content: space-between;
    justify-content: space-between;
    border: 1px solid #e2e2e2;
    padding: 0;
}
.explain-td {
    width: 610px;
    line-height: 25.6px;
    padding: 10px;
}
.explain-td .explain-titile {
    font-size: 21px;
    padding: 10px;
}
.explain-td .explain-desctiption {
    font-size: 17px;
}
.bridal-fair-content-detail li.content-hide {
    display: none;
}
.bridal-fair-content-detail button {
    display: block;
    position: absolute;
    background: #e2e2e2;
    height: 100%;
    width: 30px;
    font-size: 20px;
    color: #fff;
}
.bridal-fair-content-detail button.sp {
    display: none;
}
.bridal-fair-content-detail button:hover {
    opacity: 0.7;
    -webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
}
.bridal-fair-content-detail button.next-content {
    right: 0;
}
.bridal-fair-content-detail button.prev-content {
    left: 0;
}



/*--------------------------------------

詳細ページ

----------------------------------------*/
#bridal-fair-detail{
    margin: 0 auto 80px;
}
#bridal-fair-detail .bridal-fair-list-hour{
    color: #707070;
    font-size: 17px;
    text-align: right;
    margin-bottom: 30px;
}
#bridal-fair-detail .bridal-fair-detail-ttl{
    /* color: #333; */
    color: #B55245;
    font-size: 26px;
    font-weight: normal;
    margin: 0 0 15px;
}
#bridal-fair-detail .bridal-fair-list-icon {
    margin: 0 0 20px;
}

.bridal-fair-detail-wrap{
    overflow: hidden;
    /* margin: 0 auto 45px; */
    margin: 0 auto 36px;
}
.bridal-fair-detail-wrap figure{
    width: 500px;
    height: 500px;
    float: left;
}
.bridal-fair-detail-wrap figure img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.bridal-fair-detail-wrap .bridal-fair-detail-cont{
    /* width: 570px; */
    width: 456px;
    float: right;
    min-height: 375px; /*img height*/
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

#bridal-fair-detail .ymd_pulldown:after {
    content: '▼';
    color: #B2AFAA;
    /* margin-left: -20px; */
    margin-left: -24px;
}

#bridal-fair-detail .ymd_pulldown select{
    border: none;
    color: #707070;
    font-size: 17px;
    font-weight: bold;
    border-bottom: 2px solid;
    padding: 0 20px 0 4px;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background: url("../img/select_arr.png") no-repeat right center;
}

.bridal-fair-detail-reserve-block {
    width: 100%;
    border: 2px solid #D2CABA;
    /* display: flex; */
    margin-bottom: 24px;
}
.bridal-fair-detail-reserve-block label {
    background-color: #F7F7F7;
    /* width: 480px; */
    width: 384px;
    display: flex;
    text-align: center;
    justify-content: center;
    align-items: center;
    /* font-size: 30px; */
    font-size: 24px;
    color: #998452;
}
.bridal-fair-detail-reserve-block label div:before {
    content: '';
    background-image: url(../img/clock.svg);
    background-size: contain;
    background-position: center center;
    /* width: 40px;
    height: 40px; */
    width: 32px;
    height: 32px;
    display: inline-block;
    vertical-align: top;
    position: relative;
    /* top: 1px; */
    top: 0.8px;
    left: -12px;
}
.bridal-fair-detail-reserve{
    margin: 0 auto;
    padding: 12px 0 30px;
}
.bridal-fair-detail-reserve table{
    width: 450px;
    font-size: 16px;
}
.bridal-fair-detail-reserve th,
.bridal-fair-detail-reserve td{
    border-bottom: 1px solid #b2afaa;
    padding: 6px 0;
}
.bridal-fair-detail-reserve .remains {
    display: inline-block;
}
.bridal-fair-detail-reserve .reserve-btn {
    /* font-size: 16px; */
    font-size: 12.8px;
    line-height: 1;
    text-align: center;
    /* padding: 10px 30px; */
    /* padding: 8px 24px; */
    color: #fff;
    display: block;
    white-space: nowrap;
}
.bridal-fair-detail-reserve .noreserve-btn {
    /* font-size: 16px; */
    font-size: 12.8px;
    line-height: 1;
    text-align: center;
    /* padding: 10px 30px; */
    padding: 8px 24px;
    color: #fff;
    display: block;
    white-space: nowrap;
}
.bridal-fair-detail-reserve .reserve-btn a{
    color: #fff;
    display: block;
    padding: 8px 24px;
}
.bridal-fair-detail-reserve .reserve-btn:hover{
    opacity: 0.8;
}
.bridal-fair-detail-reserve .reserve-btn{
    background: #5e7441;
    cursor: pointer;
}
.bridal-fair-detail-reserve .noreserve-btn{
    background: #707070;
}

.bridal-fair-detail-reserve p{
    font-size: 12.8px;
    padding: 8px 0;
}

/* .bridal-fair-detail-join{
    border: 2px solid #D2CABA;
} */

.bridal-fair-detail-join h4{
    color: #fff;
    text-align: center;
    font-size: 16px;
    font-weight: normal;
    padding: 8px 0;
    background: #CAB68B;
}
.bridal-fair-detail-join .join-txt{
    padding: 8px 16px;
    border-top: 1px solid #333;
    border-bottom: 1px solid #333;
}
.bridal-fair-detail-join p{
    /* font-size: 20px; */
    font-size: 16px;
    /* line-height: 32px; */
    line-height: 25.6px;
    color: #000;
}

.bridal-fair-detail-subttl{
    color: #CAB68B;
    font-weight: normal;
    font-size: 24px;
    line-height: 38.4px;
    margin: 0 0 8px;
}
.bridal-fair-explan-txt{
    display: inline-block;
    font-size: 17px;
    line-height: 25.6px;
    margin: 20px 0 10px;
    width: 100%;
}

.bridal-fair-explan-box li{
    -webkit-display: flex;
    -moz-display: flex;
    -ms-display: flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: space-between;
    -moz-justify-content: space-between;
    -ms-justify-content: space-between;
    justify-content: space-between;
    /* margin: 0 0 50px; */
    margin: 0 0 40px;
}
.bridal-fair-explan-box li:nth-child(even) {
    -webkit-flex-direction: row-reverse;
    -moz-flex-direction: row-reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
}
.bridal-fair-explan-box li figure{
    width: 300px;
}
.bridal-fair-explan-box li .explan-txt{
    width: 616px;
    font-size: 17px;
    line-height: 25.6px;
}
.bridal-fair-explan-box figure img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}


#bridal-fair-content h3{
    background-image: url(../img/fair-date-icon1.png) , url(../img/fair-date-icon2.png);
    background-repeat: no-repeat , no-repeat;
    background-position: left , right;
    display: inline;
    /* font-size: 20px; */
    font-size: 16px;
    /* padding: 0 30px; */
    padding: 0 24px;
}
#bridal-fair-content table{
    width: 100%;
    /* margin: 20px auto 0; */
    margin: 16px auto 0;
    /* font-size: 20px; */
    font-size: 16px;
    /* line-height: 24px; */
    line-height: 19.2px;
}
#bridal-fair-content table th ,
#bridal-fair-content table td{
    border-bottom: 1px solid #b2afaa;
}
#bridal-fair-content table th{
    background: #7D7D7D;
    color: #fff;
    text-align: center;
    font-weight: normal;
    /* padding: 5px 0; */
    padding: 4px 0;
}
#bridal-fair-content table td{
    /* padding: 20px 0; */
    padding: 16px 0;
}
#bridal-fair-content table .schedule-cont{
    /* width: 250px; */
    width: 200px;
    text-align: center;
}

#bridal-fair-someday{
    /* padding: 0 30px; */
    padding: 0 24px;
}

/* for Slick Initialize */
.bridal-fair-list-img {
    visibility: hidden;
}
.bridal-fair-list-img.slick-initialized {
    visibility: visible;
}

/* search */
.search-box {
    width: 100%;
    margin: 30px auto;
}
.reservation-calendar-box {
    display: none;
    width: 90%;
    max-height: 95%;
    max-width: 1000px;
    background-color: #ffffff;
    position:fixed;
    z-index: 999999;
    padding: 20px;
    overflow: scroll;
    margin: 0 auto;
}
.button-box {
    position: relative;
    margin: 50px 15px 50px auto;
    width: 250px;
}
.reserve-on-calendar-button {
    display: inline-block;
    text-align: center;
    width: 100%;
    padding: 5px 10px;
    background-color: #a18b3c;
    border: 1px solid #a18b3c;
    color: #fff;
    cursor: pointer;
}
.reserve-on-calendar-button:hover {
    opacity: 0.7;
    -webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
}

/* modal */
 #modal-bg {
     display:none;
     width:100%;
     height:100%;
     background-color: rgba(0,0,0,0.5);
     position:fixed;
     top:0;
     left:0;
     z-index: 999998;
 }
 .modal-hide {
     display: none!important;
 }
 .close-modal-button {
     cursor: pointer;
     position: absolute;
     right: 10px;
     top: 8px;
     font-size: 40px;
     color: #707070;
 }

/* option class (scrollの表示・非表示用)*/
.until-scroll {
    display: none;
}

.no-bb {
    border-bottom: none!important;
}

/* .pickup-fair-box */
.pickup-fair-box .bridal-fair-list-pickup-date {
    width: 75px;
    text-align: center;
    line-height: 18px;
    position: absolute;
    top: 12px;
    left: 12px;
    padding: 3px;
    background: rgb(249,249,247); /* for ie/edge */
    background: rgba(249,249,247,0.8);
}
.pickup-fair-box .bridal-fair-list-pickup-date.Sat {
    color: #2a7fb9;
}
.pickup-fair-box .bridal-fair-list-pickup-date.Sun,
.pickup-fair-box .bridal-fair-list-pickup-date.holiday {
    color: #B55245;
}
.pickup-fair-box .pickup-date-ym {
    color: #676767;
    font-size: 13px;
}
.pickup-fair-box .pickup-date-d {
    font-size: 21px;
    border-bottom: 1px solid #676767;
    padding: 4px;
}
.pickup-fair-box .pickup-date-w {
    font-size: 14px;
    padding: 3px;
}

/* "その他のフェア開催日" エリア */
.bridal-fair-other-date-box {
    width: calc(100% - 300px);
    display: inline-block;
    padding: 5px 10px 5px;
    position: absolute;
    bottom: 0;
}
.bridal-fair-other-date-box p.bridal-fair-other-date-title {
    margin-bottom: 3px;
}
.bridal-fair-other-date-box ul li.bridal-fair-other-date-list {
    width: 35px;
    height: 40px;
    color: #707070;
    border-right: 1px solid #eeeeee;
    text-align: center;
    padding: 1px;
    display: inline-block;
    letter-spacing: 0;
    float: left;
}
.bridal-fair-other-date-box ul li.bridal-fair-other-date-list:nth-child(n + 15) {
    display: none; /* pcでは14個までしか表示しない */
}
.bridal-fair-other-date-box ul li.bridal-fair-other-date-list.holiday,
.bridal-fair-other-date-box ul li.bridal-fair-other-date-list.Sun {
    color: #B40014;
}
.bridal-fair-other-date-box ul li.bridal-fair-other-date-list.Sat {
    color: #0046AA;
}
.bridal-fair-other-date-box ul li.bridal-fair-other-date-list p {
    display: inline-block;
    width: 100%;
    height: 50%;
    vertical-align: middle;
}
.bridal-fair-other-date-box ul li.bridal-fair-other-date-list p.bridal-fair-other-date-time {
    font-size: 8px;
    white-space: nowrap;
}
.bridal-fair-other-date-box ul li.bridal-fair-other-date-list p.bridal-fair-other-date-status {
    font-size: 10px;
    font-family: Osaka,"ＭＳ Ｐゴシック","MS PGothic",Sans-Serif;
}
.bridal-fair-other-date-box p.open-reservation-date-calendar {
    color: #a18b3c;
    text-decoration: underline;
    display: inline-block;
    position: absolute;
    bottom: 15px;
    right: 10px;
    cursor: pointer;
    transition: all 0.2s ease-in-out;
}
.bridal-fair-other-date-box p.open-reservation-date-calendar:hover {
    opacity: 0.6;
}


/* 開催時間の段ずれ修正CSS */
.bridal-fair-list-title .part-block,
.bridal-fair-list-cont .bridal-fair-list-time .part-block,
.pickup-fair-box .bridal-fair-list-time .part-block {
    white-space: nowrap !important;
}
.bridal-fair-list-title .bridal-fair-list-time .bridal-fair-list-time-parts span.time-block.no-slash,
.bridal-fair-list-title .bridal-fair-list-tinfo .bridal-fair-list-time .bridal-fair-list-time-parts span.time-block.no-slash,
.bridal-fair-list-cont .bridal-fair-list-time .bridal-fair-list-time-parts span.time-block,
.bridal-fair-list-cont .bridal-fair-list-tinfo  .bridal-fair-list-time .bridal-fair-list-time-parts span.time-block,
.pickup-fair-box .bridal-fair-list-time .bridal-fair-list-time-parts span.time-block,
.bridal-fair-list-title .bridal-fair-list-time .bridal-fair-list-time-parts span.time-block {
    display: inline-block;
    width: auto !important;
}
