@font-face {
    font-family: 'Swistblnk-Monthoers';
    src: url('../fonts/Swistblnk-Monthoers.ttf.woff') format('woff'),
        url('../fonts/Swistblnk-Monthoers.ttf.svg#Swistblnk-Monthoers') format('svg'),
        url('../fonts/Swistblnk-Monthoers.ttf.eot'),
        url('../fonts/Swistblnk-Monthoers.eot?#iefix') format('embedded-opentype');
    font-weight: normal;
    font-style: normal;
}

/* タイトル文字のフォント代替 */
#fair .content__title .entry-title,
#webform .content__title .entry-title,
#plan .content__title .entry-title {
    font-family: "dnp-shuei-mincho-pr6n",sans-serif;
    font-weight: 800;
    font-style: normal;
}

/* コンテンツタイトル */
#bridal-fair .title.font_en_large,
#webform .title.font_en_large, 
#plan .title.font_en_large {
    font-family: 'Swistblnk-Monthoers';
    letter-spacing: 1px;
    font-weight: normal;
}

#bridal-fair .title.design_border1,
#webform .title.design_border1,
#plan .title.design_border1 {
    font-size: 35px;
    padding-top: 15px;
    padding-bottom: 15px;
    margin-bottom: 60px;
    margin-top: 20px;
    background-image: url(../img/design_border1.png);
    background-repeat: no-repeat;
    background-position: bottom center;
    background-size: 200px;
    color: var(--primary-color);
}

.box.box2 {
    max-height: 145px;
    margin-top: 50px;
}

#plan .title.design_border1 {
    line-height: 1;
    text-align: center;
}


#bridal-fair .pickup-fair-box, /* Recommended Fair 背景色 */
#bridal-fair .bridal-fair-list-date, /* Recommended Fair 日付背景色 */
#bridal-fair .bridal-fair-other-more, /* フェア一覧 その他を見る */
#bridal-fair .bridal-fair-other-close /* フェア一覧 閉じる */
{
    background-color: var(--bg-color-lightbrown);
}

/* Recommended Fair カード見切れ */
#bridal-fair .pickup-fair-box-inner-flex .bridal-fair-list-box {
    height: calc(100% - 270px);
}

/* Recommended Fair フェアを予約する */
#bridal-fair .pickup-fair-box .pickup-fair-box-inner .bridal-fair-list-reserve a {
    background-color: var(--primary-color);
    border: var(--primary-color);
}

/* Recommended Fair 詳細を見る・特典表示 */
#bridal-fair .pickup-fair-box .pickup-fair-box-inner .fuw-bridal-fair-privilege,
#bridal-fair .pickup-fair-box .pickup-fair-box-inner .bridal-fair-list-more a {
    color: var(--primary-color);
    border: 1px solid var(--primary-color);
}

#bridal-fair .bridal-fair-list-title h4,
#bridal-fair .fuw-bridal-fair-catchphrase, /* フェア一覧 キャッチコピー */
#plan .plandetail .bridal-fair-list-title h4 /* プラン詳細 関連フェア キャッチコピー */
{
    color: var(--primary-color);
}

#bridal-fair .bridal-fair-list-reserve a, /* フェア一覧 フェアを予約する */
#bridal-fair .fuw-bridal-fair-reserve, /* フェア一覧 フェアを予約する */
#bridal-fair .search-box .search-button, /* フェア一覧 カレンダー検索 */
#bridal-fair .bridal-fair-contact li.btn-trip a, /* フェア一覧 下部のお問い合わせ */
#bridal-fair .bridal-fair-contact li.btn-inq a, /* フェア一覧 下部のお問い合わせ */
#plan .plandetail .bridal-fair-list .bridal-fair-list-reserve a /* プラン詳細 関連フェア フェアを予約する */
{
    border: 1px solid var(--primary-color);
    background: var(--primary-color);
}

#bridal-fair .bridal-fair-concept input[type="checkbox"]:checked + label {
    background-color: var(--primary-color);
    border-color: var(--primary-color);
    color: #fff;
}

#bridal-fair .bridal-fair-concept .checkbox:hover {
    background: var(--primary-color-light);
    color: #fff;
}

/* カレンダー選択時 */
#fair .calendar-label input[type="checkbox"]:checked + span,
#fair .calendar-label input[type="checkbox"]:checked ~ span.stock {
    background-color: var(--primary-color);
    color: #fff;
}

.fair .more-display-fairs {
    border-color: var(--primary-color);
    color: var(--primary-color);
}

/* フェア詳細 参加特典 */
#bridal-fair-detail .bridal-fair-detail-join .join-txt {
    border: 2px solid var(--primary-color-light);
    background: #fff;
}

#bridal-fair-detail .reserve-btn, /* フェア詳細 予約するボタン */
#bridal-fair-detail .bridal-fair-detail-join, /*  */
#bridal-fair-detail .bridal-fair-detail-join h4 /*  */
{
    border: 1px solid var(--primary-color-light);
    background: var(--primary-color-light);
}

/* フェア詳細 キャッチコピー */
#bridal-fair-detail .bridal-fair-detail-subttl {
    color: var(--primary-color);
}

/* フェア詳細 テーブルヘッダー */
#bridal-fair-content table th {
    background-color: var(--primary-color);
}

#bridal-fair .bridal-fair-list-icon ul li.exist-tag, /* フェア一覧 Recommended Fair カテゴリ */
#bridal-fair .fuw-bridal-fair-content .fuw-bridal-fair-category, /* フェア一覧 カテゴリ */
#bridal-fair .bridal-fair-list-more a, /* フェア一覧 詳細を見る */
#bridal-fair .bridal-fair-list-privilege a, /* フェア一覧 特典表示 */
#bridal-fair .search-box .reset-button, /* フェア一覧 カレンダーリセット */
#bridal-fair .fuw-bridal-fair-detail, /* フェア一覧 詳細を見る */
#bridal-fair .fuw-bridal-fair-privilege, /* フェア一覧 特典表示 */
#plan .plandetail .bridal-fair-list .bridal-fair-list-more a, /* プラン詳細 関連フェア 詳細を見る */
#plan .plandetail .bridal-fair-list .fuw-bridal-fair-privilege, /* プラン詳細 関連フェア 特典を表示 */
#plan .plandetail .bridal-fair-list-icon ul li.exist-tag /* プラン詳細 関連フェア カテゴリ */
{
    border: 1px solid var(--primary-color);
    color: var(--primary-color);
}


/* オリジナルから文字色踏襲 */
p, li, th, td {
  color: #4A4A4A;
}

.s-header-bg-overlay p,
.s-header-bg-overlay li,
.s-header-bg-overlay th,
.s-header-bg-overlay td
{
  font-size: 1.4em;
  line-height: 2.0;
}

/* PAGE TOP */
.pageTop a {
    word-wrap: normal;
}

#contact-form table td:first-child {
    background-color: unset;
    font-weight: unset;
}

#contact-form .buttons.contact_index {
    text-align: center;
}

body#plan {
    font-size: 1em;
}

#plan .s-header__trigger {
    width: 5rem;
    height: 5rem;
}
#plan .s-header__trigger-icon {
    width: 2.2rem;
    height: 0.1rem;
}

/* ヘッダーメニューアクション調整 */
#plan .js__trigger:not(.-is-active) .s-header__trigger-icon:before {
    transform: translate3d(0, 0.7rem, 0);
}
#plan .js__trigger:not(.-is-active) .s-header__trigger-icon:after {
    transform: translate3d(0, -0.7rem, 0);
}

/* プラン一覧ソート */
#plan .plan .sortArea {
    background-color: var(--bg-color-lightbrown);
}

#plan .plan .sortArea dl dd label {
    border: 1px solid var(--primary-color-light);
    background-color: #fff;
}
/* プラン絞り込みラベル選択状態 */
#plan .plan .sortArea dl dd input[type="checkbox"]:checked+label {
    border: 1px solid var(--primary-color);
    background-color: var(--primary-color);
    color: #fff;
}

#plan .contents-wrap .col-wrap .content {
    background: var(--primary-color-light);
}

#plan .contents-wrap .btn a {
    background: url(../img/plan/arrow_white.png) var(--primary-color) no-repeat right;
    background-size: 30px;
    background-position: bottom 55% right 20px;
    color: #fff;
}

#plan .contactBox .btnBox>div a {
    background: var(--primary-color);
    color: #fff;
}

#plan .contactBox.last{
    margin-bottom: 0;
    background-color: var(--bg-color-lightbrown);
}

#plan .plandetail .plan .listArea .item {
    padding-top: 0;
    border-top: none;
}

/* プラン詳細リストの調整 */
#plan .plandetail .plan .listArea .item .planList ul {
    display: flex;
    flex-wrap: wrap;
}

#plan .plandetail .plan .listArea .item .priceBox, /* プラン詳細 上部料金 */
#plan .plandetail .plan .listArea .item .postBox .text .info dl.privilege, /* プラン詳細 特典ヘッダー */
#plan .plandetail .plan .listArea .item .planList ul li .cellA, /* プラン詳細 特典リスト */
#plan .plandetail .contactBox /* 問い合わせボックス */
{
    background-color: var(--primary-color-light);
}
/* プラン詳細 特典枠 */
#plan .plandetail .plan .listArea .item .postBox .text .info
{
    border: 2px solid var(--primary-color-light);
}

/* プラン詳細 */
#plan .plandetail .plan .listArea .item .priceBox .wrap .title {
    color: #fff;
}

#plan .plandetail .bridal-fair-subttl {
    color: var(--primary-color);
}

@media screen and (max-width: 768px) {
    #plan .contents-wrap .col-wrap .content {
        background-color: unset;
        /* effect.css 影響対応 */
        min-height: unset;
        overflow: unset;
    }
    #plan .contents-wrap .col-wrap > .col {
        background-color: var(--primary-color-light);
    }
}


#plan .plandetail .plan .listArea .item .planList ul li .cellA /* プラン詳細 特典リスト */
#plan .plandetail .plan .listArea .item .planList ul li .cellC /* プラン詳細 特典リスト */
{
    font-size: 12px;
}

@media screen and (max-width: 768px) {
    #plan .plandetail .bridal-fair-list-title h3 {
        font-size: 13px;
    }
    #plan .plandetail .bridal-fair-list-title h4 {
        font-size: 12.8px;
    }
}
@media screen and (max-width: 420px) {
    #plan .relation-fair .bridal-fair-list-title h3 a {
        font-size: 13px;
    }
    #plan .relation-fair .bridal-fair-list-title h4 a {
        font-size: 12.8px;
    }

    #plan .plandetail .listArea .item .planList ul li  /* プラン詳細 特典リスト */
    {
        font-size: 12px;
    }
}

#plan .plandetail .relation-fair .bridal-fair-list-dt a {
    height: auto;
}
.s-header__logo-link {
    padding-top: 1px !important;
}

#webform #questionnaire_flg .checkbox.type_tour {
    padding: 0.5em;
}
#webform #questionnaire_flg .checkbox.type_tour span,
#webform #questionnaire_flg .checkbox.type_tour #label_add_questionnaire_flg {
    font-size: 0.7em;
}

#webform .pmktxt a {
    font-size: 1em;
}

#webform #contact-form table th {
    background-color: var(--primary-color-light);
}

#webform #contact-form strong,
#webform #contact-form table th strong {
    background-color: var(--primary-color);
}
