@charset "utf-8";

/* default classic widget style */

/* 基本設定 */
.p-widget {
  width:100%; font-size:16px; line-height:1.6;
  position: relative; background: #fff;
}

@media not all and (max-width: 1240px) {
  .p-widget:not(:first-of-type) { margin-top:40px; }
}
@media (max-width: 1240px) {
  .p-widget { width:calc(50% - 50px); height:100%; margin:50px 0 0 50px; }
}
@media (max-width: 767px) {
  .p-widget { width:calc(50% - 20px); margin:40px 0 0 20px; }
}
@media (max-width: 599px) {
  .p-widget { width:100%; height:auto; margin-left:0; }
}

/* ウィジェット用タイトル */
.p-widget-headline {
  position: relative; font-size:16px;
  border-top:5px solid rgba(var(--tcd-accent-color, 0,0,0),1); padding:calc(20px - 0.3em) 20px;
  border-bottom:1px solid #ddd;
  font-weight: 600;
}
@media (max-width: 767px) {
  .p-widget-headline {
    padding:calc(15px - 0.3em) 20px;
  }
}

/* TCDデザインされた記事一覧ウィジェット */
.p-widget-posts {}
.p-widget-posts__labels {}
.p-widget-posts__labels-item {
  cursor: pointer; width:100%; height:50px; padding:0 10px; transition: color 0.3s ease;
  font-size:14px; line-height:1.2; text-align: center; color:#fff; background:#000;
}
* + .p-widget-posts__labels-item { border-left:1px solid rgba(255, 255, 255, 0.3); }
.p-widget-posts__labels-item.is-active { pointer-events: none; color:#000; background:#fff; border-color:#fff; }
.p-widget-posts__labels-item.is-active + .p-widget-posts__labels-item { border-color:#fff; }

.p-widget-posts__fields {}
.p-widget-posts__fields-item { display:none; padding:30px 20px 20px; }
.p-widget-posts__fields-item.is-active { display:block; }
.p-widget-posts__fields-article {  }
* + .p-widget-posts__fields-article { margin-top:20px; }
.p-widget-posts__fields-article__link {}
.p-widget-posts__fields-article__image { width:80px; height:80px; position: relative; }
.p-widget-posts__fields-article__title { width:calc(100% - 80px); padding-left:20px; font-size:14px; font-weight:normal; line-height:1.8; max-height:5.4em; }

@media (hover: hover) and (pointer: fine) {
  .p-widget-posts__labels-item:hover { color:rgba(255, 255, 255, 0.5); }
}

/* TCDデザインされたレビュー一覧ウィジェット */
.p-widget-reviews {}
.p-widget-reviews__item {}
.p-widget-reviews__item-link {}
.p-widget-reviews__item-image { position: relative; width:100px; height:100px; }
.p-widget-reviews__item-content { width:100%; padding:20px 20px; }
.p-widget-reviews__item-image + .p-widget-reviews__item-content { width:calc(100% - 100px); padding:0 20px; }
.p-widget-reviews__item-content-inner { width:100%; }
.p-widget-reviews__item-title { font-size:14px; font-weight:normal; line-height:1.5; margin:-0.25em 0; }
.p-widget-reviews__item-stars { line-height:1; margin-top:10px; }
* + .p-widget-reviews__item .p-widget-reviews__item-content { border-top:1px solid #ddd; }


/* TCDレビューランキングウィジェット, 閲覧履歴 */
.p-widget-review-ranking {}
.p-widget-review-ranking__item {}
* + .p-widget-review-ranking__item { border-top:1px solid #ddd; }
.p-widget-review-ranking__item-link { padding:20px; }
/* .p-widget-review-ranking__item-link.is-no-image { padding:30px 20px; } */
.p-widget-review-ranking__item-image { position: relative; width:100px; height:70px; }
.p-widget-review-ranking__item-rank { position: absolute; top:0; left:0; z-index:2; }
.p-widget-review-ranking__item-content { width:100%; }
.p-widget-review-ranking__item-rank-wrapper { position: relative; width:35px; }
.p-widget-review-ranking__item-image + .p-widget-review-ranking__item-content { width:calc(100% - 100px); padding-left:20px; }
.p-widget-review-ranking__item-rank-wrapper + .p-widget-review-ranking__item-content { width:calc(100% - 35px); padding-left:20px; }
.p-widget-review-ranking__item-title { font-size:14px; line-height:1.5; margin:-0.25em 0; font-weight:normal; }
.p-widget-review-ranking__item-stars { line-height:1; margin-top:10px; }
.p-widget-review-ranking__item-rank .p-ranking-label { width:35px; height:40px; font-size:14px;  }
.p-widget-review-ranking__item-rank .p-ranking-label__number { height:33px; padding-top:2px; }
.p-widget-review-ranking__item-rank .p-ranking-label:before,
.p-widget-review-ranking__item-rank .p-ranking-label:after { width:20px; height:20px; bottom:3px; }
.p-widget-review-ranking__item-rank .p-ranking-label:before { transform: rotate(160deg); left:-4px; }
.p-widget-review-ranking__item-rank .p-ranking-label:after { transform: rotate(-160deg); right:-4px; }


/* TCD記事スライダー */
.p-widget-slider { height:160px; position: relative; }
.p-widget-slider__inner { height:100%; }
.p-widget-slider__list {}
.p-widget-slider__item { width:100%; }
.p-widget-slider__item-link { display:block; position: relative; width:100%; height:100%; }
.p-widget-slider__item-content {
  position: absolute; left:0; bottom:0; z-index:3;
  padding:30px 20px; width:100%;
}
.p-widget-slider__item-title {
  font-size:16px; font-weight: 600; line-height:1.8; text-align: center; color:#fff; max-height:3.6em; margin:-0.4em 0;
}
.p-widget-slider__item-overlay { background: transparent; background-image: linear-gradient(180deg, rgba(0, 0, 0, 0) 30%, rgba(0, 0, 0, 0.6)); }

.p-widget-slider__arrow-icon {
  position: absolute; top:0; bottom:0; z-index:2; margin: auto; transition:all 0.3s ease;
  font-size:16px; color:#fff; width:40px; height:40px; cursor: pointer;
}
.p-widget-slider__arrow-prev { left:0; }
.p-widget-slider__arrow-next { right:0; }

@media (hover: hover) and (pointer: fine) {
  .p-widget-slider__arrow-icon { opacity:0; }
  .p-widget-slider__arrow-prev { left:-3px; }
  .p-widget-slider__arrow-next { right:-3px; }
  .p-widget-slider:hover .p-widget-slider__arrow-icon { opacity:1; }
  .p-widget-slider:hover .p-widget-slider__arrow-icon:hover { opacity:0.5; }
  .p-widget-slider:hover .p-widget-slider__arrow-prev { left:0px; }
  .p-widget-slider:hover .p-widget-slider__arrow-next { right:0px; }
}


/* TCD レビューカテゴリーウィジェット */
.review_category_widget {}
.review_category_widget .widget_categories > ul > li > a { position: relative; }
.review_category_widget .widget_categories > ul > li > ul {
  overflow: hidden; height:0; transition:height 0.3s ease;
}
.p-review-category-widget__icon {
  cursor: pointer; display:inline-block; width:50px; height:100%;
  position: absolute; top:0; right:0;
}
.p-review-category-widget__icon:before,
.p-review-category-widget__icon:after {
  content: ''; display: block; width: 1px; height: 10px; background: #000;
  position: absolute; top: 0; left: 0; right: 0; bottom: 0; margin: auto; transition:height 0.3s ease;
}
.p-review-category-widget__icon:after { transform:rotate(90deg); }
.is-active > .p-review-category-widget__icon:before { height:0; }

.review_category_widget .widget_categories > ul > li > ul { background:#f1f1f1; }
.review_category_widget .widget_categories > ul > li.is-active > a{ color:rgba(var(--tcd-accent-color, 0,0,0),1); }
.review_category_widget .widget_categories > ul > li.is-active .p-review-category-widget__icon:before { height:0; }
.p-review-category-widget__icon ~ .count { display:none!important; }


/*
  RSS
*/
.widget_rss .rss-widget-icon { display:none; }
.widget_rss .p-widget__headline .rsswidget:first-of-type:before { content: "\e90b"; font-family: 'design_plus'; font-size:0.8em; font-weight:400; }
.widget_rss ul li { padding:20px; display:-webkit-box; display:-ms-flexbox; display:flex; -ms-flex-wrap: wrap; flex-wrap: wrap; }
.widget_rss ul li:not(:first-child) { border-top:1px solid #ddd; }
.widget_rss ul li .rss-date { -ms-flex-order:1; order:1; color:#999; font-size:0.85em; line-height:1; margin-right:10px; }
.widget_rss ul li cite { -ms-flex-order:2; order:2; color:#999; font-size:0.85em; line-height:1; }
.widget_rss ul li .rsswidget { -ms-flex-order:3; order:3; display:block; width:100%; margin: -0.35em 0; }
.widget_rss ul li .rssSummary { -ms-flex-order:4; order:4; color:#999; font-size:0.85em; margin: -0.35em 0; }
.widget_rss .rss-date { position:relative; font-family:Arial; padding-left:1.2em; }
.widget_rss .rss-date:before {
  font-size:0.85em; margin-top:0.06em;
  font-family: 'footer_bar'; content: '\e912'; position: absolute; top: 0px; left: 0px;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
.widget_rss .rsswidget ~ .rss-date, .widget_rss .rsswidget ~ cite { margin-bottom:10px; }
.widget_rss .rsswidget ~ .rssSummary { margin-top:calc(10px - 0.35em); }
@media (hover: hover) and (pointer: fine) {
  .widget_rss a:hover { color:rgba(0, 0, 0, 0.5); }
}
/*
  ドロップダウン
  - アーカイブリスト
  - カテゴリーリスト
*/
.widget_archive select, .widget_categories select {
	border:none; background:#fff;  width:100%; height:60px; padding:0 20px; cursor:pointer;
  -webkit-appearance:none; appearance:none;
}
.widget_archive .screen-reader-text, .widget_categories .screen-reader-text  {
	display:block; clip:auto; clip-path:none; pointer-events:none;
	height:60px; width:50px; margin:0;
	left:calc(100% - 50px); text-indent:-100vw;
}
.widget_archive .screen-reader-text:before, .widget_categories .screen-reader-text:before {
  font-family:'design_plus'; content:'\e90e'; text-align:center; text-indent:0;
  display:block; font-size:14px; width:14px; height:14px; line-height:14px;
  position:absolute; right:15px; top:24px;
}
@media (max-width: 767px) {
.widget_archive select, .widget_categories select { height:50px; }
.widget_archive .screen-reader-text, .widget_categories .screen-reader-text  { height:50px; }
}

/*
  カスタムHTML
*/
.widget_custom_html .custom-html-widget { padding:20px; }


/*
  カレンダー
*/
#calendar_wrap { padding:20px; margin:-6px 0 -20px; }
#wp-calendar { margin:0 auto; width:100%; font-size:11px; border-collapse:collapse; table-layout:fixed;}
#wp-calendar caption { padding:7px 0; font-size:14px; font-weight:600; }
#wp-calendar thead th, #wp-calendar tfoot td { padding:12px 10px; line-height:2; }
#wp-calendar thead th { font-weight:500; }
#wp-calendar tbody th, #wp-calendar tbody td { padding:0; margin:0; line-height:1; text-align:center; }
#wp-calendar tbody td { padding: 15px 0px; position:relative; }
#wp-calendar tbody a {
	display:block; width:30px; height:30px; line-height:30px; border-radius:30px; margin:0 auto;
	color:#fff; background-color:rgba(var(--tcd-accent-color, 0,0,0),1);
	position:absolute; top:0; left:0; bottom:0; right:0; margin:auto;
}
#wp-calendar #today { font-weight:600; }
.wp-calendar-nav { font-size:14px; padding:20px 0; width:100%; font-size:12px; }
.wp-calendar-nav .wp-calendar-nav-prev { width:40%; float:left; }
.wp-calendar-nav .wp-calendar-nav-next { width:40%; float:right; text-align:right; }
@media (hover: hover) and (pointer: fine) {
  #wp-calendar td a:hover { color:#fff; background-color:rgba(var(--tcd-accent-color, 0,0,0),0.7); }
}


/*
  ギャラリー
*/
.widget_media_gallery .gallery-item { margin-top:0 !important; }
.widget_media_gallery .gallery { padding:20px; }

/*
  タグクラウド
*/
.widget_tag_cloud .tagcloud {
  margin: -6px 0px 0px -7px; padding:20px;
  display: -webkit-box; display: -ms-flexbox; display: -webkit-flex; display: flex;
  -ms-flex-wrap:wrap; -webkit-flex-wrap:wrap; flex-wrap:wrap;
}
.widget_tag_cloud .tag-cloud-link {
  font-size:12px!important; background:#eeeeee;
	border-radius:5px; overflow: hidden; margin: 6px 0px 0px 6px;
  display:block; line-height:35px; height:35px; padding:0px 12px;
  color: #000; transition:all 0.2s ease;
}
@media (hover: hover) and (pointer: fine) {
  .widget_tag_cloud .tag-cloud-link:hover {
    background:rgba(var(--tcd-accent-color, 0,0,0),1); color:#fff;
  }
}

/*
  テキスト
*/
.widget_text .textwidget { padding:20px; }
.textwidget .post_content p { line-height:2; margin-bottom:1.5em; }

/*
  ブロック
*/
/* .widget_block { } */

/*
  動画
*/
.widget_media_video .wp-video { padding:20px; }

/*
  アーカイブリスト
  カテゴリーリスト
  ナビゲーションメニュー
  メタ情報
  固定ページ
*/

.widget_categories a, .widget_archive a, .widget_nav_menu a, .widget_meta a, .widget_pages a {
	display:-webkit-box; display:-ms-flexbox; display:flex;
  -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between;
  -webkit-box-align: center; -ms-flex-align: center; align-items: center;
  padding:15px 20px; border-top: 1px solid #ddd; line-height:1.8
}
.widget_categories > ul > li:first-of-type > a, .widget_archive > ul > li:first-of-type > a,
.widget_nav_menu > div > ul > li:first-of-type > a, .widget_meta > ul > li:first-of-type > a, .widget_pages > ul > li:first-of-type > a
{ border-top:none; }
.widget_categories ul ul a, .widget_archive ul ul a, .widget_nav_menu ul ul a, .widget_meta ul ul a, .widget_pages ul ul a { padding-left:30px; }
.widget_categories ul ul ul a, .widget_archive ul ul ul a, .widget_nav_menu ul ul ul a, .widget_meta ul ul ul a, .widget_pages ul ul ul a { padding-left:45px; }
.widget_categories ul ul ul ul a, .widget_archive ul ul ul ul a, .widget_nav_menu ul ul ul ul a, .widget_meta ul ul ul ul a, .widget_pages ul ul ul ul a { padding-left:60px; }
.widget_categories a .count, .widget_archive a .count {
  display: block; min-width: 50px; height: 30px; line-height: 29px; border-radius: 5px;
  font-size: 14px; text-align: center; color:#000; background: #fff; border: 1px solid #ddd; margin-left: 5px;
}
@media (hover: hover) and (pointer: fine) {
  .widget_categories a:hover, .widget_archive a:hover, .widget_nav_menu a:hover, .widget_meta a:hover, .widget_pages a:hover
  { color:rgba(var(--tcd-hover-color, 0,0,0),1); }
}

/*
  カテゴリー、アーカイブカウント
*/
/* .widget_categories > ul, .widget_archive > ul {
  margin-top: calc( -30px + 0.5em);
}
.widget_categories a, .widget_archive a {
  display:-webkit-box; display:-ms-flexbox; display:flex;
  -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between;
  -webkit-box-align: center; -ms-flex-align: center; align-items: center;
  padding:1em 0 1em 5px; border-bottom: 1px solid #ddd;
}
.widget_categories a .count, .widget_archive a .count {
  display: block; min-width: 50px; height: 30px; line-height: 29px; border-radius: 30px;
  font-size: 14px; text-align: center; background: #fff; border: 1px solid #ddd; margin-left: 5px;
} */


/*
  コメント
*/
.widget_recent_comments li { color:#999; padding:calc(20px - 0.3em) 20px; }
.widget_recent_comments li:not(:first-of-type) { border-top:1px solid #ddd; }
@media (hover: hover) and (pointer: fine) {
  .widget_recent_comments a:hover { color:rgba(0, 0, 0, 0.5); }
}

/*
  最近の投稿
*/
.widget_recent_entries li {
  padding:20px;
	display:-webkit-box; display:-ms-flexbox; display:flex;
	-webkit-box-orient: vertical; -webkit-box-direction: reverse; -ms-flex-direction: column-reverse; flex-direction: column-reverse;
}
.widget_recent_entries li:not(:first-child) {
  border-top:1px solid #ddd;
}
.widget_recent_entries li a { display:block; margin:-0.35em 0; }
.widget_recent_entries .post-date {
  position:relative; color:#999; font-size:0.85em; display:block; margin-bottom:10px; line-height:1;
  font-family:Arial; padding-left:1.2em;
}
.widget_recent_entries .post-date:before {
  font-size:0.85em; margin-top:0.06em;
  font-family: 'footer_bar'; content: '\e912'; position: absolute; top: 0px; left: 0px;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
@media (hover: hover) and (pointer: fine) {
  .widget_recent_entries a:hover { color:rgba(0, 0, 0, 0.5); }
}

/* 検索フォーム */
.widget_search label { display:none; }
.widget_search > form { height:60px; border:none; }
.widget_search > form > div { display:-webkit-box; display:-webkit-flex; display:flex; height:100%; position:relative; }
.widget_search > form > div:before {
	content:'\e951'; font-family:'design_plus'; text-indent:0; display:block; width:50px; height:60px; line-height:60px;
	text-align:center; color:#333; font-size:18px; z-index:1; position:absolute; right:0px; top:0px; pointer-events:none;
}
.widget_search > form input[type="text"] { border:none; outline: none; background:none; padding-left:20px; margin:0; width:calc(100% - 50px); height:100%; }
.widget_search > form input[type="submit"] {
	border:none; background:none; width:50px; height:100%; z-index:200; position:relative;
  cursor:pointer; display:block; text-indent:-300px; overflow:hidden;
}
@media (max-width: 767px) {
  .widget_search > form { height:50px; }
  .widget_search > form > div:before { height:50px; line-height:50px; }
}

/*
  画像
*/
.widget_media_image a { display:block; }
.widget_media_image img { width:100%; }
.widget_media_image > a, .widget_media_image > img { padding:20px; }
.widget_media_image .wp-caption { width:100%!important; max-width:100%; padding:20px; }
.widget_media_image .wp-caption-text { text-align: center; margin:calc(20px - 0.3em) 0 -0.3em; }
