@charset "utf-8";

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

reset

----------------------------------------*/
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: #F7F7F7;
    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:-15px;
}
.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: 18px;
    margin-bottom: 8px;
    /* color: #333; */
    color: #B55245;
    font-weight: normal;
}
.bridal-fair-list-title h4{
    color: #CAB68B;
    /* font-size: 20px; */
    font-size: 16px;
    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;
}
.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;
    width: auto;
}
.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: 370px; */
    width: 296px;
    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{
    position: absolute;
    bottom: 12px;
    right: 12px;
    padding-top: 20px;
}
.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 {
    position: absolute;
    bottom: 12px;
    right: 154px; /*詳細を見るボタン(aタグ)分の[width+right]をplus*/
    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 8px;
}
.bridal-fair-list-img{
    /* width: 300px;
    height: 300px; */
    width: 240px;
    height: 240px;
    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: #F7F7F7;
    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: 1078px; */
    width: 862px;
    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: 288px; */
    width: 230px;
    /* padding: 15px 0 15px 15px; */
    padding: 12px 0 12px 12px;
}

.bridal-fair-list-date-box .bridal-fair-list-box {
    /* width: 784px; */
    width: 627px;
    /* padding: 15px 15px 50px; */
    padding: 12px 12px 40px;
}

.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: #F7F7F7;
    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: #F7F7F7;
    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: 500px;
    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 tr {
    border-bottom: 1px solid #b2afaa;
}
.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: #505050;
}

.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: #505050;
    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;
}

#bridal-fair-someday .bridal-fair-list-join {
    display: none;
}


/* 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;
}
#concept-box {
    margin-left: 20px;
    width: 39%;
    display: inline-block;
    vertical-align: top;
}
.button-box {
    position: relative;
    margin: 50px auto;
    width: 100%;
    text-align: center;
}
.search-button {
    display: inline-block;
    margin-right: 10px;
    text-align: center;
    width: 350px;
    padding: 5px 50px;
    background-color: #5e7441;
    border: 1px solid #5e7441;
    color: #e2e2e2;
    cursor: pointer;
}
.search-button:hover {
    opacity: 0.7;
    -webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
}
.reset-button {
    display: inline-block;
    text-align: center;
    width: 150px;
    padding: 5px 0px;
    color: #5e7441;
    border: 1px solid #5e7441;
    background-color: #fff;
    cursor: pointer;
}
.reset-button:hover {
    opacity: 0.7;
    -webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
}
.other-modal-button {
    display: none;
}

/* 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;
}


/* 開催時間の段ずれ修正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;
}