@charset "UTF-8";

/* =========================================================
   01-common-direct.css
   直営店用 共通CSS
   町田スタジオ：独立加盟店バッジなし
========================================================= */

/* 町田A1の直営共通・投稿関連CSSを以下へ追加 */
/* =========================================================
   町田 A1：ブログ・アーカイブ一覧
   1カラム化／サイドバー非表示／ピンク配色
========================================================= */

/* タイトル帯 */
html body.blog .page-header,
html body.archive .page-header,
html body.category .page-header,
html body.tag .page-header,
html body.blog .vk_pageHeader,
html body.archive .vk_pageHeader,
html body.category .vk_pageHeader,
html body.tag .vk_pageHeader {
  background: #f45f86 !important;
  background-color: #f45f86 !important;
  background-image: none !important;
  border: none !important;
  box-shadow: none !important;
}

html body.blog .page-header *,
html body.archive .page-header *,
html body.category .page-header *,
html body.tag .page-header *,
html body.blog .vk_pageHeader *,
html body.archive .vk_pageHeader *,
html body.category .vk_pageHeader *,
html body.tag .vk_pageHeader * {
  color: #ffffff !important;
}

/* 本文外側 */
html body.blog .siteContent,
html body.archive .siteContent,
html body.category .siteContent,
html body.tag .siteContent {
  padding-top: 44px !important;
  padding-bottom: 64px !important;
}

html body.blog .siteContent > .container,
html body.archive .siteContent > .container,
html body.category .siteContent > .container,
html body.tag .siteContent > .container {
  width: 100% !important;
  max-width: 1040px !important;
  margin-right: auto !important;
  margin-left: auto !important;
  padding-right: 24px !important;
  padding-left: 24px !important;
  box-sizing: border-box !important;
}

/* Lightningの2カラムを解除 */
html body.blog .siteContent .row,
html body.archive .siteContent .row,
html body.category .siteContent .row,
html body.tag .siteContent .row {
  display: block !important;
  width: 100% !important;
  margin-right: 0 !important;
  margin-left: 0 !important;
}

/* サイドバー非表示 */
html body.blog .siteContent .subSection,
html body.blog .siteContent .sideSection,
html body.blog .siteContent aside.widget-area,
html body.blog .siteContent #secondary,
html body.archive .siteContent .subSection,
html body.archive .siteContent .sideSection,
html body.archive .siteContent aside.widget-area,
html body.archive .siteContent #secondary,
html body.category .siteContent .subSection,
html body.category .siteContent .sideSection,
html body.category .siteContent aside.widget-area,
html body.category .siteContent #secondary,
html body.tag .siteContent .subSection,
html body.tag .siteContent .sideSection,
html body.tag .siteContent aside.widget-area,
html body.tag .siteContent #secondary {
  display: none !important;
}

/* 投稿一覧を中央1カラムへ */
html body.blog .siteContent .mainSection,
html body.archive .siteContent .mainSection,
html body.category .siteContent .mainSection,
html body.tag .siteContent .mainSection {
  display: block !important;
  float: none !important;
  flex: 0 0 100% !important;

  width: 100% !important;
  max-width: 900px !important;
  min-width: 0 !important;

  margin: 0 auto !important;
  padding: 0 !important;

  box-sizing: border-box !important;
}

/* 投稿一覧の区切り */
html body.blog .mainSection article,
html body.archive .mainSection article,
html body.category .mainSection article,
html body.tag .mainSection article,
html body.blog .mainSection .media,
html body.archive .mainSection .media,
html body.category .mainSection .media,
html body.tag .mainSection .media {
  margin: 0 !important;
  padding-top: 22px !important;
  padding-bottom: 22px !important;

  border-bottom: 1px solid rgba(244, 95, 134, 0.20) !important;
}

/* 投稿タイトル */
html body.blog .mainSection h2 a,
html body.archive .mainSection h2 a,
html body.category .mainSection h2 a,
html body.tag .mainSection h2 a,
html body.blog .mainSection .media-heading a,
html body.archive .mainSection .media-heading a,
html body.category .mainSection .media-heading a,
html body.tag .mainSection .media-heading a {
  color: #333333 !important;
  text-decoration: none !important;
}

html body.blog .mainSection h2 a:hover,
html body.archive .mainSection h2 a:hover,
html body.category .mainSection h2 a:hover,
html body.tag .mainSection h2 a:hover,
html body.blog .mainSection .media-heading a:hover,
html body.archive .mainSection .media-heading a:hover,
html body.category .mainSection .media-heading a:hover,
html body.tag .mainSection .media-heading a:hover {
  color: #d94d78 !important;
}

/* カテゴリー・日付など */
html body.blog .entry-meta,
html body.archive .entry-meta,
html body.category .entry-meta,
html body.tag .entry-meta {
  color: #777777 !important;
  font-size: 13px !important;
}

/* ページ送り */
html body.blog .pagination .page-numbers.current,
html body.archive .pagination .page-numbers.current,
html body.category .pagination .page-numbers.current,
html body.tag .pagination .page-numbers.current {
  background: #f45f86 !important;
  border-color: #f45f86 !important;
  color: #ffffff !important;
}

/* スマホ */
@media screen and (max-width: 767px) {
  html body.blog .siteContent,
  html body.archive .siteContent,
  html body.category .siteContent,
  html body.tag .siteContent {
    padding-top: 30px !important;
    padding-bottom: 46px !important;
  }

  html body.blog .siteContent > .container,
  html body.archive .siteContent > .container,
  html body.category .siteContent > .container,
  html body.tag .siteContent > .container {
    padding-right: 16px !important;
    padding-left: 16px !important;
  }

  html body.blog .mainSection article,
  html body.archive .mainSection article,
  html body.category .mainSection article,
  html body.tag .mainSection article,
  html body.blog .mainSection .media,
  html body.archive .mainSection .media,
  html body.category .mainSection .media,
  html body.tag .mainSection .media {
    padding-top: 18px !important;
    padding-bottom: 18px !important;
  }
}
/* =========================================================
   町田 A1：ブログ投稿ページ
   1カラム化・サイドバー非表示
========================================================= */

/* 本文エリア */
html body.single-post .siteContent {
  padding-top: 44px !important;
  padding-bottom: 64px !important;
}

html body.single-post .siteContent > .container,
html body.single-post .siteContent .container {
  width: 100% !important;
  max-width: 1040px !important;

  margin-right: auto !important;
  margin-left: auto !important;
  padding-right: 24px !important;
  padding-left: 24px !important;

  box-sizing: border-box !important;
}

/* 2カラム解除 */
html body.single-post .siteContent .row {
  display: block !important;

  width: 100% !important;
  max-width: 100% !important;

  margin-right: 0 !important;
  margin-left: 0 !important;
}

/* 右側の長いサイドバーを非表示 */
html body.single-post .siteContent .subSection,
html body.single-post .siteContent .sideSection,
html body.single-post .siteContent .sidebar,
html body.single-post .siteContent aside.widget-area,
html body.single-post .siteContent #secondary {
  display: none !important;
}

/* 記事本文を中央へ */
html body.single-post .siteContent .mainSection,
html body.single-post .siteContent main.mainSection,
html body.single-post .siteContent #main {
  display: block !important;
  float: none !important;
  flex: 0 0 100% !important;

  width: 100% !important;
  max-width: 860px !important;
  min-width: 0 !important;

  margin: 0 auto !important;
  padding: 0 !important;

  box-sizing: border-box !important;
}

/* 投稿記事本体 */
html body.single-post article,
html body.single-post .entry-body,
html body.single-post .entry-content {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;

  margin-right: auto !important;
  margin-left: auto !important;

  box-sizing: border-box !important;
}

/* 記事タイトル */
html body.single-post .entry-title,
html body.single-post article h1 {
  margin: 0 0 18px !important;

  color: #333333 !important;
  font-size: 30px !important;
  font-weight: 700 !important;
  line-height: 1.55 !important;
}

/* 投稿日・カテゴリー */
html body.single-post .entry-meta {
  margin: 0 0 30px !important;

  color: #777777 !important;
  font-size: 13px !important;
  line-height: 1.7 !important;
}

/* 本文 */
html body.single-post .entry-body,
html body.single-post .entry-content {
  color: #3f3f3f !important;
  font-size: 16px !important;
  line-height: 1.95 !important;
}

html body.single-post .entry-body p,
html body.single-post .entry-content p {
  margin: 0 0 1.6em !important;
}

/* 本文画像 */
html body.single-post .entry-body img,
html body.single-post .entry-content img {
  max-width: 100% !important;
  height: auto !important;
}

/* 前後の記事・関連記事の区切り */
html body.single-post .postNextPrev,
html body.single-post .post-navigation,
html body.single-post .related-posts,
html body.single-post .veu_relatedPosts {
  width: 100% !important;
  max-width: 860px !important;

  margin: 42px auto 0 !important;
  padding-top: 28px !important;

  border-top: 1px solid rgba(244, 95, 134, 0.22) !important;
  box-sizing: border-box !important;
}

/* スマホ */
@media screen and (max-width: 767px) {
  html body.single-post .siteContent {
    padding-top: 30px !important;
    padding-bottom: 46px !important;
  }

  html body.single-post .siteContent > .container,
  html body.single-post .siteContent .container {
    padding-right: 16px !important;
    padding-left: 16px !important;
  }

  html body.single-post .entry-title,
  html body.single-post article h1 {
    font-size: 23px !important;
    line-height: 1.5 !important;
  }

  html body.single-post .entry-body,
  html body.single-post .entry-content {
    font-size: 15px !important;
    line-height: 1.9 !important;
  }
}
/* =========================================================
   町田 A1：イベント一覧
   The Events Calendar
========================================================= */

/* イベントページ上部 */
html body.post-type-archive-tribe_events .siteContent {
  padding-top: 0 !important;
  padding-bottom: 64px !important;
}

/* テーマ側にタイトル帯がないため追加 */
html body.post-type-archive-tribe_events .siteContent::before {
  content: "イベント" !important;

  display: flex !important;
  align-items: center !important;
  justify-content: center !important;

  width: 100vw !important;
  min-height: 118px !important;

  margin-right: calc(50% - 50vw) !important;
  margin-bottom: 46px !important;
  margin-left: calc(50% - 50vw) !important;
  padding: 24px !important;

  background: #f45f86 !important;

  color: #ffffff !important;
  font-size: 30px !important;
  font-weight: 700 !important;
  line-height: 1.4 !important;
  text-align: center !important;

  box-sizing: border-box !important;
}

/* イベント本体の最大幅 */
html body.post-type-archive-tribe_events .tribe-events,
html body.post-type-archive-tribe_events #tribe-events-pg-template {
  width: 100% !important;
  max-width: 1040px !important;

  margin-right: auto !important;
  margin-left: auto !important;
}

/* 検索ボタン */
html body.post-type-archive-tribe_events
.tribe-events-c-search__button,
html body.post-type-archive-tribe_events
button.tribe-events-c-search__button {
  background: #f45f86 !important;
  border-color: #f45f86 !important;
  border-radius: 6px !important;

  color: #ffffff !important;
  font-weight: 700 !important;
}

html body.post-type-archive-tribe_events
.tribe-events-c-search__button:hover {
  background: #d94d78 !important;
  border-color: #d94d78 !important;
}

/* 表示切替の選択中ライン */
html body.post-type-archive-tribe_events
.tribe-events-c-view-selector__list-item--active
.tribe-events-c-view-selector__list-item-link::after {
  background-color: #f45f86 !important;
}

/* 月・日付などのアクセント */
html body.post-type-archive-tribe_events
.tribe-events-calendar-list__month-separator-text,
html body.post-type-archive-tribe_events
.tribe-events-calendar-list__event-date-tag-weekday,
html body.post-type-archive-tribe_events
.tribe-events-calendar-list__event-date-tag-daynum {
  color: #d94d78 !important;
}

/* イベントタイトル */
html body.post-type-archive-tribe_events
.tribe-events-calendar-list__event-title a,
html body.post-type-archive-tribe_events
.tribe-events-calendar-list__event-title a:visited {
  color: #333333 !important;
  text-decoration: none !important;
}

html body.post-type-archive-tribe_events
.tribe-events-calendar-list__event-title a:hover {
  color: #d94d78 !important;
}

/* イベント画像 */
html body.post-type-archive-tribe_events
.tribe-events-calendar-list__event-featured-image-wrapper img {
  border-radius: 12px !important;
}

/* 前後移動 */
html body.post-type-archive-tribe_events
.tribe-events-c-nav__list-item a {
  color: #555555 !important;
}

html body.post-type-archive-tribe_events
.tribe-events-c-nav__list-item a:hover {
  color: #d94d78 !important;
}

/* カレンダー連携ボタン */
html body.post-type-archive-tribe_events
.tribe-events-c-subscribe-dropdown__button {
  border-color: #f45f86 !important;
  border-radius: 6px !important;
  color: #d94d78 !important;
}

html body.post-type-archive-tribe_events
.tribe-events-c-subscribe-dropdown__button:hover,
html body.post-type-archive-tribe_events
.tribe-events-c-subscribe-dropdown__button:focus {
  background: #f45f86 !important;
  color: #ffffff !important;
}

/* イベント間の区切り */
html body.post-type-archive-tribe_events
.tribe-events-calendar-list__event-row {
  padding-bottom: 36px !important;
  border-bottom: 1px solid rgba(244, 95, 134, 0.18) !important;
}

/* スマホ */
@media screen and (max-width: 767px) {
  html body.post-type-archive-tribe_events .siteContent::before {
    min-height: 92px !important;
    margin-bottom: 28px !important;
    padding: 18px !important;
    font-size: 24px !important;
  }

  html body.post-type-archive-tribe_events .siteContent {
    padding-bottom: 46px !important;
  }

  html body.post-type-archive-tribe_events .tribe-events,
  html body.post-type-archive-tribe_events #tribe-events-pg-template {
    padding-right: 16px !important;
    padding-left: 16px !important;
    box-sizing: border-box !important;
  }

  html body.post-type-archive-tribe_events
  .tribe-events-calendar-list__event-row {
    padding-bottom: 26px !important;
  }
}
/* =========================================================
   町田 A1：イベント詳細ページ
   The Events Calendar / single event
========================================================= */

/* ページ全体 */
html body.single-tribe_events .siteContent {
  padding-top: 0 !important;
  padding-bottom: 64px !important;
}

/* 上部にタイトル帯を追加 */
html body.single-tribe_events .siteContent::before {
  content: "イベント" !important;

  display: flex !important;
  align-items: center !important;
  justify-content: center !important;

  width: 100vw !important;
  min-height: 118px !important;

  margin-right: calc(50% - 50vw) !important;
  margin-bottom: 42px !important;
  margin-left: calc(50% - 50vw) !important;
  padding: 24px !important;

  background: #f45f86 !important;

  color: #ffffff !important;
  font-size: 30px !important;
  font-weight: 700 !important;
  line-height: 1.4 !important;
  text-align: center !important;

  box-sizing: border-box !important;
}

/* イベント本体 */
html body.single-tribe_events #tribe-events-pg-template,
html body.single-tribe_events .tribe-events-single {
  width: 100% !important;
  max-width: 920px !important;

  margin-right: auto !important;
  margin-left: auto !important;
  padding-right: 24px !important;
  padding-left: 24px !important;

  box-sizing: border-box !important;
}

/* 「イベント一覧へ」 */
html body.single-tribe_events .tribe-events-back {
  margin: 0 0 24px !important;
}

html body.single-tribe_events .tribe-events-back a {
  color: #d94d78 !important;
  font-weight: 700 !important;
  text-decoration: none !important;
}

/* イベントタイトル */
html body.single-tribe_events
.tribe-events-single-event-title {
  margin: 0 0 12px !important;

  color: #333333 !important;
  font-size: 30px !important;
  font-weight: 700 !important;
  line-height: 1.5 !important;
}

/* 開催日時・料金 */
html body.single-tribe_events
.tribe-events-schedule {
  margin: 0 0 32px !important;
}

html body.single-tribe_events
.tribe-events-schedule h2 {
  margin: 0 !important;
  padding: 0 !important;

  background: none !important;
  border: none !important;

  color: #666666 !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  line-height: 1.7 !important;
}

/* タイトルと画像の間の大きな空白を削減 */
html body.single-tribe_events
.tribe-events-event-image {
  width: 100% !important;
  max-width: 720px !important;

  margin: 28px auto 38px !important;
  padding: 0 !important;

  text-align: center !important;
}

html body.single-tribe_events
.tribe-events-event-image img {
  display: block !important;

  width: auto !important;
  max-width: 100% !important;
  height: auto !important;

  margin: 0 auto !important;

  border-radius: 14px !important;
}

/* 説明本文 */
html body.single-tribe_events
.tribe-events-single-event-description {
  width: 100% !important;
  max-width: 820px !important;

  margin: 0 auto !important;
  padding: 0 !important;

  color: #3f3f3f !important;
  font-size: 16px !important;
  line-height: 1.95 !important;

  box-sizing: border-box !important;
}

html body.single-tribe_events
.tribe-events-single-event-description p {
  margin: 0 0 1.5em !important;
}

/* 本文中の画像 */
html body.single-tribe_events
.tribe-events-single-event-description img {
  max-width: 100% !important;
  height: auto !important;
}

/* 本文中の見出し */
html body.single-tribe_events
.tribe-events-single-event-description h2,
html body.single-tribe_events
.tribe-events-single-event-description h3,
html body.single-tribe_events
.tribe-events-single-event-description h4 {
  margin: 34px 0 16px !important;
  padding: 10px 14px !important;

  background: #fff0f5 !important;
  border: none !important;
  border-left: 5px solid #f45f86 !important;
  border-radius: 7px !important;

  color: #d94d78 !important;
  font-weight: 700 !important;
  line-height: 1.5 !important;
}

/* 申込フォーム入力欄 */
html body.single-tribe_events
.tribe-events-single-event-description input[type="text"],
html body.single-tribe_events
.tribe-events-single-event-description input[type="email"],
html body.single-tribe_events
.tribe-events-single-event-description input[type="tel"],
html body.single-tribe_events
.tribe-events-single-event-description input[type="date"],
html body.single-tribe_events
.tribe-events-single-event-description select,
html body.single-tribe_events
.tribe-events-single-event-description textarea {
  width: 100% !important;
  max-width: 100% !important;

  margin: 5px 0 14px !important;
  padding: 11px 13px !important;

  background: #ffffff !important;
  border: 1px solid #d7d7d7 !important;
  border-radius: 7px !important;

  color: #333333 !important;
  font-size: 15px !important;
  line-height: 1.6 !important;

  box-shadow: none !important;
  box-sizing: border-box !important;
}

html body.single-tribe_events
.tribe-events-single-event-description textarea {
  min-height: 150px !important;
}

/* 入力中 */
html body.single-tribe_events
.tribe-events-single-event-description input:focus,
html body.single-tribe_events
.tribe-events-single-event-description select:focus,
html body.single-tribe_events
.tribe-events-single-event-description textarea:focus {
  border-color: #f45f86 !important;
  outline: none !important;
  box-shadow: 0 0 0 3px rgba(244, 95, 134, 0.12) !important;
}

/* 送信ボタン */
html body.single-tribe_events
.tribe-events-single-event-description input[type="submit"],
html body.single-tribe_events
.tribe-events-single-event-description button[type="submit"] {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  min-width: 190px !important;
  min-height: 48px !important;

  margin: 20px 0 10px !important;
  padding: 11px 28px !important;

  background: #f45f86 !important;
  border: 1px solid #f45f86 !important;
  border-radius: 999px !important;

  color: #ffffff !important;
  font-size: 15px !important;
  font-weight: 700 !important;

  cursor: pointer !important;
  box-shadow: none !important;
}

/* カレンダー追加ボタン */
html body.single-tribe_events
.tribe-events-c-subscribe-dropdown__button {
  border-color: #f45f86 !important;
  color: #d94d78 !important;
}

/* 下部の詳細・会場・主催者情報 */
html body.single-tribe_events
.tribe-events-single-section {
  width: 100% !important;
  max-width: 820px !important;

  margin: 38px auto 0 !important;
  padding: 24px !important;

  background: #fff9fb !important;
  border: 1px solid rgba(244, 95, 134, 0.22) !important;
  border-radius: 16px !important;

  box-sizing: border-box !important;
}

html body.single-tribe_events
.tribe-events-single-section-title {
  color: #d94d78 !important;
}

/* 前後のイベント */
html body.single-tribe_events
.tribe-events-sub-nav {
  max-width: 820px !important;
  margin: 34px auto 0 !important;
  padding: 22px 0 0 !important;

  border-top: 1px solid rgba(244, 95, 134, 0.20) !important;
}

html body.single-tribe_events
.tribe-events-sub-nav a {
  color: #d94d78 !important;
}

/* スマホ */
@media screen and (max-width: 767px) {

  html body.single-tribe_events .siteContent::before {
    min-height: 92px !important;
    margin-bottom: 28px !important;
    padding: 18px !important;
    font-size: 24px !important;
  }

  html body.single-tribe_events #tribe-events-pg-template,
  html body.single-tribe_events .tribe-events-single {
    padding-right: 16px !important;
    padding-left: 16px !important;
  }

  html body.single-tribe_events
  .tribe-events-single-event-title {
    font-size: 23px !important;
  }

  html body.single-tribe_events
  .tribe-events-event-image {
    margin-top: 22px !important;
    margin-bottom: 28px !important;
  }

  html body.single-tribe_events
  .tribe-events-single-event-description {
    font-size: 15px !important;
    line-height: 1.9 !important;
  }

  html body.single-tribe_events
  .tribe-events-single-section {
    padding: 18px 16px !important;
  }

  html body.single-tribe_events
  .tribe-events-single-event-description input[type="submit"],
  html body.single-tribe_events
  .tribe-events-single-event-description button[type="submit"] {
    width: 100% !important;
  }
}