html, body {
	margin: 0;
	padding: 0;
}

/* フェア レイアウト崩れ調整 (タブに余計な色が入るのを防ぐ)*/
article#bridal-fair section li a:before, article#bridal-fair section li a:after {
    display: none;
}
/* fixed footer (sp)*/
@media screen and (max-width: 768px) {
    .bridal-fair-sel {
        position:fixed;
        /* bottom: 55px; */
    }
    .cont-tabs .sp .active{
        display:none;
    }
}

/* 式場css影響対策 */
article#bridal-fair, .second.plan, #contact-form, .bridal-fair-sel {
    line-height: 1.5;
    letter-spacing: 0.05em;
    text-align: left;
}
/* font */
body {
    font-family: "Yu Mincho", "YuMincho", "Hiragino Mincho Pro", sans-serif;
}
input, button, textarea, select, option {
    font-family: "Yu Mincho", "YuMincho", "Hiragino Mincho Pro", sans-serif;
}
form label.checkbox {
    font-family: "Yu Mincho", "YuMincho", "Hiragino Mincho Pro", sans-serif;
}
.pickup-fair-box .pickup-date-d, .pickup-fair-box .pickup-date-ym {
    font-family: "Yu Mincho", "YuMincho", "Hiragino Mincho Pro", sans-serif;
}
/* pc, sp hide */
@media print, screen and (max-width: 768px) {
    .pc {
        display: none !important;
    }
}
@media print, screen and (min-width: 769px) {
    .sp {
        display: none !important;
    }
}

/* バナー管理機能 */
@media screen and (max-width: 768px) {
    #bridal-fair .banner-wrapper {
        padding: 0 12px;
    }
}

/* フェア詳細画面 (selectboxをクリックしたらdatepickerが出てくる風のデザイン) */
#bridal-fair-detail span.ymd_pulldown {
    position: absolute;
}
#bridal-fair-detail span.ymd_pulldown select {
    pointer-events: none;
}
#bridal-fair-detail .ymd_pulldown:after {
    position: absolute;
}
#bridal-fair-detail .bridal-fair-list-hour .fair-date-select {
    border: none;
    position: relative;
    opacity: 0;
    width: 160px;
    padding: 5px;
    cursor: pointer;
}
/* datepicker size */
#ui-datepicker-div {
    font-size: 16px!important;
}
/* atag underline none */
article#bridal-fair a:hover, #contact-form a:hover, .second.plan a:hover {
    text-decoration: none!important;
}

/* ーーーーーーーーーーーーー　　form関係　　ーーーーーーーーーーーーーー */
/* pagetop title */
@media screen and (max-width:768px) {
    #contact-form .title {
        text-align: center;
        color: #707070;
        font-size: 20px;
        font-weight: normal;
        position: relative;
    }
}
@media screen and (min-width:769px) {
    #contact-form .title {
        text-align: center;
        color: #707070;
        font-size: 24px;
        font-weight: normal;
        line-height: 1;
    }
}
#contact-form p.intro {
    margin: 20px 0 8px 0;
}
/* pagetop title (フェア予約以外のフォーム)*/
#contact-form .type_tour, #contact-form .type_request, #contact-form .type_inquiry {
    display: none;
}
/* どのページでも */
.type_tour, .type_request, .type_inquiry {
    display: none;
}
/* セレクトボックスの背景がグレーになるので強制的に指定 */
#contact-form select {
    background: #fff;
}
/* send画面の背景 (デフォルトのfffだと違和感) */
#contact-form.send {
    background: transparent;
}
/* page全体 */
#contact-form {
    background: none;
    padding: 24px 5px 100px;
    max-width: 920px;
}
/* テーブル内 */
#contact-form table {
    background: #fff;
}
/* テーブル項目名 */
#contact-form table th {
    background: #e0dbcc;
    color: #707070;
    font-weight: bold;
}
/* アンケート・他submit関係 button */
#contact-form label.checkbox, #contact-form .submit_button {
    background: linear-gradient(to bottom, #F19DB5 5%, #F19DB5 100%);
    background-color: #F19DB5;
    border: 1px solid #F19DB5;
    text-shadow: 0px 1px 0px #F19DB5;
    -webkit-border-radius: 0px;
    border-radius: 0px;
}
#contact-form label.checkbox span {
    background-color: #F19DB5;
}
/* intro , privacypolicy */
@media screen and (min-width: 769px){
    #contact-form p.intro, #contact-form p.pmktxt {
        font-size: 135%;
    }
}
@media screen and (max-width: 768px){
    #contact-form p.intro, #contact-form p.pmktxt {
        font-size: 120%;
    }
}
/* テーブル項目名・form内容 */
#contact-form table th, #contact-form table td {
    font-size: 125%;
}
@media screen and (min-width: 769px){
    #contact-form table th, #contact-form table td {
        padding: 20px 10px 20px 10px;
    }
}
/* アンケートボタン下の文言 */
#contact-form div#add_questionnair_desc {
    font-size: 125%;
}
/* 見学予約の "希望日時を追加する" ボタンのテキスト  */
#contact-form section h1 {
    font-size: 125%;
}
/* 送信完了画面のthanks text ・ index btn  */
div#contact-form.send p,
div#contact-form.send a {
    font-size: 16px;
}
/* 諸々枠線等 */
#contact-form input, #contact-form textarea, #contact-form select {
    border: 1px solid #a18849;
}
#contact-form input[type="text"], #contact-form input[type="tel"], #contact-form input[type="email"] {
    border: 1px solid #a18849;
}
@media screen and (max-width: 768px){
    #contact-form table td{
        padding: 8px;
    }
}
#contact-form .b2 {
    border-bottom: 2px solid #f7f6f2;
}
#contact-form .b2t {
    border-top: 2px solid #f7f6f2;
}
#contact-form .b2b {
    border-bottom: 2px solid #f7f6f2;
}
#contact-form select {
    height: 40px;
}
/* -- 他 -- */
/* ３typeフォームのセレクトボックス */
#contact-form select#form_type_id {
    padding: 4px 5px!important;
}
/* inputの大きさ調整 */
#contact-form input[type="text"], #contact-form input[type="tel"], #contact-form input[type="email"], #contact-form textarea {
    padding: 10px;
}
@media screen and (max-width: 768px) {
    /* 名前入力欄が１つの為調整 */
    #contact-form #form_user_last_name, #contact-form #form_user_first_name, #contact-form #form_user_last_kana, #contact-form #form_user_first_kana {
        width: 100%;
        max-width: 100%;
    }
    /* 各フォーム間のスペース */
    #contact-form table tr {
        margin-bottom: 30px;
    }
}

/* (2021/01~) */
.hide-op {
    display: none;
}

/* ”申し込み内容” 項目 */
#contact-form .type_id_item {
    display: none;
}

/* pagetop title (フェア予約以外のフォーム)*/
#contact-form .type_tour, #contact-form .type_request, #contact-form .type_inquiry {
    display: none;
}
/* セレクトボックスの背景がグレーになるので強制的に指定 */
#contact-form select {
    background: #fff;
}

/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝デザイン(カラー等)＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */

@media screen and (max-width: 768px){
    /* ーーーーーーーーーーー 共通 ーーーーーーーーーーー */
    /* 切り替えタブ　左 */
    #fair ul.bridal-fair-sel .left {
        background: #F19DB5;
    }
    /* 切り替えタブ　右 */
    #fair ul.bridal-fair-sel .right a {
        color: #F19DB5;
    }
    #fair ul.bridal-fair-sel .right {
        border: 1px solid #F19DB5;
        background: #fff;
    }
    /* 電話予約ボタン　中央 */
    #fair ul.bridal-fair-sel .center a {
        color: #F19DB5;
    }
    #fair ul.bridal-fair-sel .center {
        border: 1px solid #F19DB5;
        background: #fff;
    }

    /* ーーーーーーーーーーフェア一覧ーーーーーーーーーー */

    /* ーーーーーーーーーーフェア詳細ーーーーーーーーーー */

}
/* ーーーーーーーーーーー 共通 ーーーーーーーーーーー */
/* shadow無 */
.bridal-fair-list {
    box-shadow: none;
}
/* BRIDALFAIR 文言、　他タブの英字 */
/* #bridal-fair .title.en, article#bridal-fair .tabs .horizontal li a span {
    font-family: 'Sorts Mill Goudy', serif!important;
} */
/* ーーーーーーーーーーフェア一覧ーーーーーーーーーー */
/* おすすめのブライダルフェア 文言 */
#bridal-fair .title.jp {
    font-size: 15px;
}
/* フェアタイトル */
#fair .bridal-fair-list-title h3, .bridal-fair-list-title h3 a {
    color: #313131;
    font-size: 16px;
}
/* コンセプトタブ */
#fair .bridal-fair-list-icon ul li {
    color: #F19DB5;
    background: #fff;
    border: 1px solid #F19DB5;
    border-radius: 0px;
}
/* キャッチコピー */
#fair div.bridal-fair-list-title h4 {
    color: #F19DB5;
    display: none;
}
/* [詳細を見る]ボタン */
#fair div.bridal-fair-list-more a {
    background: #fff;
    color: #F19DB5;
    border-radius: 0px;
    border: #F19DB5 1px solid;
}
/* 切り替えタブ active*/
#fair article#bridal-fair .tabs .horizontal li:hover, #fair article#bridal-fair .tabs .horizontal li.active {
    background: #F19DB5;
}
#fair article#bridal-fair .tabs .horizontal li:hover:before, #fair article#bridal-fair .tabs .horizontal li.active:before {
    border-color: #fff #fff #F19DB5 #F19DB5;
    background: #F19DB5;
}
#fair article#bridal-fair .tabs .horizontal li.active a, #fair article#bridal-fair .tabs .horizontal li:hover a {
    color: #fff;
}
/* 切り替えタブ other */
#fair article#bridal-fair .tabs .horizontal li {
    color: #F19DB5;
    background: #fff;
    border: 1px solid #F19DB5;
}
#fair article#bridal-fair .tabs .horizontal li:before {
    border-color: #F19DB5 #F19DB5 #fff #fff;
    background: #fff;
}
#fair article#bridal-fair .tabs .horizontal li a {
    color: #F19DB5;
}
#fair article#bridal-fair .tabs .horizontal li:after {
    border-color: transparent #fff transparent transparent;
}
/* [このフェアを予約する] btn */
#fair .bridal-fair-list-reserve a{
    border: 1px solid #F19DB5;
    background: #F19DB5;
    color: #fff;
}
/* [見学予約ボタン] */
ul.bridal-fair-contact li.btn-trip a {
    background: #F19DB5;
    border-radius: 0px;
    color: #fff;
    border: 1px solid #F19DB5;
}
/* [資料請求・問い合わせ]ボタン */
ul.bridal-fair-contact li.btn-inq a {
    background: #fff;
    border-radius: 0px;
    color: #F19DB5;
    border: 1px solid #F19DB5;
}
/* フェア一覧画面　日付表示*/
#fair section.bridal-fair-list-date-box .bridal-fair-list-date, #fair section.bridal-fair-list-date-box .bridal-fair-list-date.sat,
#fair section.bridal-fair-list-date-box .bridal-fair-list-date.sun, #fair section.bridal-fair-list-date-box .bridal-fair-list-date.holiday {
    background: #fff;
}

/*ーーーーーーーーーーーーーーー　デザイン・カラーリング　ーーーーーーーーーーーーーーーーーー*/

/* fair title */
.bridal-fair-list-title h3,
.bridal-fair-list-title h3 a {
    color: #313131;
}
/* 開催場所 */
.bridal-fair-detail-place {
    font-size: 17px;
    padding: 10px 0;
}
/* 残席表示 */
.bridal-fair-detail-reserve {
    margin: 0 auto;
    padding: 12px 0;
}
/* date select pulldown */
#bridal-fair-detail .ymd_pulldown select {
    padding-right: 25px !important;
    padding-left: 15px !important;
}
@media screen and (max-width:768px) {
    /* 開催場所 */
    .bridal-fair-detail-place {
        font-size: 13px;
    }
}
/* フェア一覧に戻るボタン (fair detail) */
li.btn-index a {
    color: #5e7441;
    font-size: 12px;
    width: 100%;
}
li.btn-index {
    background: #fff;
    border: 1px solid #5e7441;
    margin: 35px auto 0;
    width: 240px;
    text-align: center;
    height: 48px;
    line-height: 48px;
    display: flex;
}
@media screen and (max-width:768px) {
    li.btn-index {
        margin-bottom: 8px;
        width: 100%;
    }
}
/* フォームのバナー */
.form-banner {
    width: 700px;
    margin: 20px auto 0;
}
@media screen and (max-width: 768px) {
    .form-banner {
        width: 100%;
        max-width: 350px;
    }
}

/* -- opt -- */
/* 余計なテキストが入ってしまうので強制非表示(エラーメッセージも) */
#contact-form .opt_1 .col-sm-3,
#contact-form .opt_1 .error_msg {
    display: none;
}

/* フェア一覧 フェア説明文 */
.bridal-fair-description {
    position: absolute;
    top: 135px;
    left: 310px;
    width: 280px;
    max-height: 80px;
    overflow: hidden;
    display: -webkit-box;
    text-overflow: ellipsis;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 4;
    font-size: 12px;
}


/* ーーーーーーーーフェア詳細ーーーーーーーー */
/* "日付選択" テキスト */
#bridal-fair-detail .bridal-fair-list-hour {
    color: #000000;
}
/* "00月00日(w)" テキスト */
#bridal-fair-detail .ymd_pulldown select {
    color: #000000;
}
/* フェアタイトル */
#bridal-fair-detail .bridal-fair-detail-ttl {
    color: #333;
}
/* [予約する] btn */
.bridal-fair-detail-reserve .reserve-btn {
    background: #F19DB5;
}
/* アクセス・会場 (＊license optional項目) */
.bridal-fair-detail-place {
}
/* 特典エリア全体 */
.bridal-fair-detail-join {
    border: 2px solid #F19DB5;
}
/* ”このフェアの参加特典” エリア */
.bridal-fair-detail-join h4 {
    color: #fff;
    background: #F19DB5;
}
/* 特典内容 */
.bridal-fair-detail-join .join-txt {
    border-top: 2px solid #F19DB5;
}
/* 特典内容 */
.bridal-fair-detail-join p {
    color: #000000;
}
/* ”当日のコンテンツ” テキスト */
#fair .bridal-fair-subttl {
    color: #F19DB5;
    border-bottom: 1px solid #000000;
}
/* 当日のコンテンツ タイトル */
.explain-td .explain-titile {
    color: #F19DB5;
}
/* 当日のコンテンツ 説明文 */
.explain-td .explain-desctiption {
    color: #000000;
}
/* [フェア一覧に戻る] btn */
li.btn-index {
    background: #fff;
    border: 1px solid #F19DB5;
}
li.btn-index a {
    color: #F19DB5;
}
/* [このフェアを予約] btn */
.bridal-fair-sel .left {
    background: #F19DB5;
    border: 1px solid #F19DB5;
}
/* [電話で予約] btn */
.bridal-fair-sel .right, .bridal-fair-sel .center {
    background: #fff;
    border: 1px solid #F19DB5;
}
.bridal-fair-sel .right a, .bridal-fair-sel .center a {
    color: #F19DB5;
}
/* キャッチコピー */
.bridal-fair-detail-subttl {
    color: #F19DB5;
}
/* ーーーーーーーーフォーム関連画面ーーーーーーーー */
/* [確認 / 戻る / 送信する] btn */
#contact-form label.checkbox, #contact-form .submit_button {
    background: #F19DB5!important;
    border: 1px solid #F19DB5!important;
}
/* =======================================================  */

/* 2022/05 調整追加 (fontsize, padding等) */
@media screen and (min-width:769px) {
    /* ---fairdetail--- */
    .bridal-fair-detail-join h4 {
        font-size: 15px;
        padding: 15px 0;
    }
    .bridal-fair-detail-join .join-txt {
        padding: 20px 20px;
    }
    .bridal-fair-detail-join p {
        font-size: 15px;
    }
    #bridal-fair-content table {
        font-size: 14px;
        line-height: 20px;
    }
    #bridal-fair-content table th {
        padding: 15px 0;
    }
    #bridal-fair-content table td {
        padding: 25px 10px;
    }
    #bridal-fair-content table td:nth-child(2) {
        padding-left: 20px;
        padding-right: 20px;
    }
}

/* カレンダーに背景色つける */
@media screen and (max-width: 768px) {
    .fc-calendar .fc-row > div.fc-today,
    .fc-calendar .fc-row > div > .fc-eve-cont a.eve-on {
        background: none;
    }
}
.fc-calendar .fc-row > div.fc-content {
    background-color: rgb(242, 236, 210);
}
.fc-calendar .fc-row > div.sun,
.fc-calendar .fc-row > div.holiday {
    background-color: #ecdbde;
}
.fc-calendar .fc-row > div.sat {
    background-color: #dde7ee;
}
.fc-calendar .fc-row > div > .fc-eve-cont a.eve-on {
    background-color: #fff4c3;
}

/* 特定のプラン詳細に表示するボタン */
.wedding-photo-btn {
    width: 300px;
    margin: 30px auto 20px;
}
.wedding-photo-btn a {
    display: block;
    background-color: #F19DB5;
    color: #fff;
    font-weight: normal;
    line-height: 1;
    text-align: center;
    display: block;
    font-size: 14px;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    width: 100%;
    padding: 20px 0;
}
@media screen and (max-width: 768px) {
    .wedding-photo-btn {
        width: 250px;
    }
    .wedding-photo-btn a {
        font-size: 12px;
        letter-spacing: 0.1em;
        padding: 15px 0;
    }
}