@charset "utf-8";
/*
Theme Name:YU-LIFE
Description:Precious子テーマ
Template:precious_tcd019
Version:4.0.2
*/

/*---------
共通デフォルト
----------*/
body {
  font-family: Verdana, "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
}
small {
  font-size: inherit;
}
.serif {
  font-family: Georgia, "Yu Mincho", "YuMincho", "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
}
.clearfix:after {
  content: "";
}

/*---------------
フォーム
---------------*/
.req {
  color: #b70000;
  font-size: 80%;
}
input[type="text"],
input[type="email"],
textarea {
  width: 100%;
  padding: 10px;
  font-size: 100%;
  box-sizing: border-box;
}
input[type="submit"] {
  width: 200px;
  font-size: 100%;
}
@media screen and (max-width: 559px) {
  input[type="text"],
  input[type="email"],
  textarea {
    width: 100%;
  }
}

/*---------------
ヘッダー
---------------*/
@media screen and (min-width: 771px) {
  #header_wrap {
    min-width: 0;
  }
  #header {
    width: 95%;
    max-width: 1140px;
  }
}

/*---------------
ロゴ画像
---------------*/
@media screen and (min-width: 771px) {
  #logo_image {
    top: 10px !important;
  }
  #logo_image img {
    width: 230px;
  }
}
@media screen and (max-width: 770px) {
  #header {
    margin-bottom: 7px;
  }
  #logo_image_mobile a {
    margin-top: 10px;
    height: 50px;
  }
  #global_menu {
    top: 10px;
  }
}
@media screen and (min-width: 768px) and (max-width: 1023px) {
  #logo_image a:before {
    content: "";
  }
  #logo_image img {
    display: inline-block;
  }
}

/*----------------
サイド付きテンプレート
----------------*/
#main_col {
  padding-bottom: 0;
}
.side_widget img {
  width: 100%;
}
@media screen and (min-width: 771px) {
  #main_contents_wrap {
    min-width: 0;
  }
  #main_contents {
    width: 95%;
    max-width: 1140px;
  }
  #main_col {
    width: 70.18%;
  }
  #side_col {
    width: 26.32%;
  }
}

/*---------------
フッター
---------------*/
#footer {
  min-width: 0;
}
#footer_inner {
  width: 95%;
  max-width: 1140px;
  margin-left: auto;
  margin-right: auto;
}
#copyright {
  min-width: 0;
}
#copyright_inner {
  width: 95%;
  max-width: 1140px;
  height: auto;
}
#copyright p {
  font-size: 14px;
}
#footer_menu ul {
  font-size: 14px;
  line-height: 2;
}
#footer .widget_media_image {
  text-align: center;
}
@media screen and (min-width: 771px) {
  #footer_right {
    float: right;
  }
  #footer_widget {
    display: flex;
    justify-content: space-between;
  }
  .footer_widget {
    width: auto;
    margin: 0 0 40px 0;
    flex-basis: 30.8%;
  }
  #copyright p {
    margin: 8px 0 0 0;
    float: right;
  }
  #footer_menu {
    margin-top: 17.8px;
  }
}
@media screen and (max-width: 770px) {
  #footer_widget {
    margin: 0;
  }
  #copyright_inner {
    width: 100%;
  }
}
/* amazonアイコン */
@media screen and (max-width: 770px) {
  .icon-file-text:before {
    content: url(svg/shop.svg);
    width: 20px;
    margin-left: auto;
    margin-right: auto;
  }
}

/*---------------
パンくずリスト
---------------*/
#bread_crumb li.home a:hover:before {
  color: #999;
}
@media screen and (max-width: 770px) {
  .post-type-archive #bread_crumb li.home a:before,
  .page #bread_crumb li.home a:before,
  .single-post #bread_crumb li.home a:before,
  #blog #bread_crumb li.home a:before,
  .category #bread_crumb li.home a:before {
    top: 0;
  }
}

/*---------------
見出し
---------------*/
.headline1 {
  font-weight: bold;
}

/*---------------
記事
---------------*/
.post {
  margin: 0 0 40px 0;
}
.post h2 {
  padding-top: 15px;
  margin: 0 0 10px 0;
  font-size: 110%;
}
.post h2:before {
  content: "■■■";
}
.post h2:after {
  content: "■■■";
}
.post p {
  line-height: 2;
  margin: 0 0 10px 0;
}

/*---------------
画像ブロック
---------------*/
@media screen and (max-width: 559px) {
  .wp-block-image .alignright,
  .wp-block-image .alignleft {
    float: none;
    margin-left: auto;
    margin-right: auto;
  }
  .wp-block-media-text {
    display: block;
  }
  .wp-block-media-text .wp-block-media-text__content {
    padding: 0;
  }
}

/*---------------
テーブルブロック
---------------*/
.post th {
  white-space: nowrap;
  width: 10px;
}
.wp-block-table.is-style-regular th {
  text-align: left;
  vertical-align: text-top;
}
@media screen and (max-width: 559px) {
  .wp-block-table th,
  .wp-block-table td {
    width: auto;
    display: block;
    box-sizing: border-box;
  }
  .wp-block-table.is-style-stripes th {
    padding-bottom: 0;
    font-weight: bold;
    line-height: 1.5;
    background: none;
    border: none;
  }
}

/*---------------
ギャラリーブロック
---------------*/
.wp-block-gallery .blocks-gallery-item figure {
  height: auto;
}
.wp-block-gallery.is-cropped .blocks-gallery-item img {
  height: auto;
}
.wp-block-gallery .blocks-gallery-item figcaption {
  padding: 0 10px 0px;
  font-size: 14px;
  background: rgba(0, 0, 0, 0.5);
}

/*---------------
SNS
---------------*/
.sns_default_top ul li.twitter_button {
  width: auto;
}
@media only screen and (max-width: 480px) {
  #share5_top {
    margin: 0;
  }
}

/*---------------
トップページ
---------------*/
/* TOPコンテンツ */
@media screen and (min-width: 771px) {
  #index_top_wrap {
    min-width: 0;
  }
  #index_top {
    width: 95%;
    max-width: 1140px;
  }
}
/* トップ動画 */
#index_movie .textwidget {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}
#index_movie .textwidget iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
}
@media screen and (min-width: 771px) {
  #index_movie_inner {
    padding-top: 10px;
    padding-bottom: 10px;
    display: flex;
    justify-content: space-between;
  }
  #index_movie_inner #index_movie {
    flex: 39;
  }
  #index_movie_inner #index_banner {
    padding-left: 10px;
    flex: 17;
    box-sizing: border-box;
  }
  #index_movie_inner #index_banner ol {
    margin: 0;
  }
  #index_movie_inner #index_banner ol li {
    margin: 0;
    padding-bottom: 10px;
  }
  #index_movie_inner #index_banner ol img {
    width: 100%;
    height: auto;
  }
}
@media screen and (max-width: 770px) {
  #index_movie_inner #index_movie {
    padding-top: 20px;
    padding-bottom: 10px;
  }
}

/* イリュージョンコースターのご紹介 */
#index_feature {
  margin: 0 0 30px 0;
}
#index_feature div {
  padding: 10px 20px;
  border: 2px solid #ddd;
}
#index_feature p {
  margin: 0;
  line-height: 2;
}

/* おすすめの商品 */
#index_product > div {
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
#index_product section {
  padding: 0 0 10px 0;
}
#index_product .image {
  display: block;
  background: #fff;
}
#index_product .image img {
  display: block;
  border: 1px solid #ccc;
  -webkit-transition-property: opacity;
  -webkit-transition-duration: 0.4s;
  -webkit-transition-timing-function: ease;
  -moz-transition-property: opacity;
  -moz-transition-duration: 0.4s;
  -moz-transition-timing-function: ease;
  -o-transition-property: opacity;
  -o-transition-duration: 0.4s;
  -o-transition-timing-function: ease;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}
#index_product .image:hover img {
  opacity: 0.8;
}
#index_product .category {
  background: #999;
  color: #fff;
  padding: 0 10px;
  height: 40px;
  line-height: 40px;
  overflow: hidden;
  font-size: 14px;
}
#index_product .category a {
  text-decoration: none;
  color: #fff;
}
#index_product .title {
  font-size: 16px;
}
#index_product .title a {
  text-decoration: none;
}
#index_product .desc {
  font-size: 14px;
  line-height: 160%;
}
#index_product .image img {
  width: 100%;
  height: auto;
}
@media screen and (min-width: 771px) {
  #index_product section {
    margin-bottom: 20px;
    flex-basis: 31%;
  }
  #index_product .title {
    margin: 5px 0 5px;
  }
  #index_product .desc {
    margin: 5px 0 10px;
  }
}
@media screen and (max-width: 770px) {
  #index_product section {
    margin-bottom: 30px;
    flex-basis: 49%;
  }
  #index_product .title {
    margin: 5px 0 10px;
  }
  #index_product .desc {
    margin: 10px 0;
  }
}
@media screen and (max-width: 480px) {
  #index_product > div {
    display: block;
  }
  #index_product section {
    margin-bottom: 30px;
  }
}
/* センターバナー */
#index_center_banner img {
  width: 100%;
  height: auto;
}
/* お知らせ */
#index_news ol li {
  font-size: 14px;
}
#index_news ol li .title {
  width: auto;
  padding-top: 5px;
}
/* 投稿 */
#index_blog ol li {
  font-size: 14px;
}
#index_blog ol li .image:hover img {
  opacity: 0.8;
}
/* 一覧を見る */
.index_archive_link a {
  font-size: 14px;
}

/*-----
関連商品
-----*/
#index_product ol li .image:hover img {
  opacity: 0.8;
}
#index_product ol li .title {
  margin: 5px 0 5px;
}
@media screen and (min-width: 771px) {
  #index_product ol {
    margin: 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  #index_product ol li {
    margin: 0 0 20px 0;
    flex-basis: 31%;
  }
  #index_product ol li .image img {
    width: 100%;
    height: auto;
  }
}

/*---------------
価格表示
---------------*/
.photo {
  position: relative;
}
.photo .price {
  margin: 0;
  padding: 0 5px;
  color: #fff;
  font-size: 14px;
  line-height: 145%;
  border-top-left-radius: 6px;
  background-color: #cacaca;
  position: absolute;
  bottom: 0;
  right: 0;
}

/*---------------
商品リスト
---------------*/
#product_list {
  margin: 0 -1.5%;
  display: flex;
  flex-wrap: wrap;
}
#product_list section {
  margin: 0 0 20px 0;
  padding: 0;
}
#product_list .image {
  display: block;
  background: #fff;
}
#product_list .image img {
  width: 100%;
  height: auto;
  display: block;
  border: 1px solid #ccc;
  transition: 0.4s ease;
  box-sizing: border-box;
}
#product_list .image:hover img {
  opacity: 0.8;
  transition: 0.4s ease;
}
#product_list .title {
  font-size: 14px;
  margin: 0 0 10px 0;
}
#product_list .title a {
  text-decoration: none;
  display: block;
  padding: 10px;
  background: #999;
  color: #fff;
  height: auto;
  min-height: 40px;
  transition: 0.4s ease;
}
#product_list .title a:hover {
  opacity: 0.8;
  transition: 0.4s ease;
}
@media screen and (min-width: 768px) {
  #product_list section {
    margin: 0 1.5% 30px;
    flex-basis: 30%;
  }
  #product_list .title {
    margin: 0;
  }
}
@media screen and (max-width: 767px) {
  #product_list section {
    margin-left: 2%;
    margin-right: 2%;
    flex-basis: 46%;
  }
}
@media screen and (max-width: 559px) {
  #product_list {
    display: block;
  }
  #product_list section .title a {
    min-height: 0;
  }
}

/*-------
商品ページ
--------*/
.single-product .product_info {
  margin-left: 20px;
  margin-bottom: 10px;
  padding: 20px 40px;
  text-align: center;
  background-color: #f7f7f7;
  float: right;
}
.single-product .product_info p {
  margin: 0;
  line-height: 200%;
}
.single-product .product_info .product_price strong {
  color: #ed1c24;
  font-size: 22px;
  font-weight: normal;
}
.single-product .product_info .product_price s + strong {
  display: block;
}
.single-product .product_info .product_link {
  padding-top: 15px;
}
.single-product .product_info .product_link span,
.single-product .product_info .product_link a {
  padding: 5px 20px;
  color: #fff;
  border-radius: 21px;
  display: inline-block;
}
.single-product .product_info .product_link span {
  background-color: #ccc;
}
.single-product .product_info .product_link a {
  color: #fff;
  text-decoration: none;
  background-color: #e53935;
  border: 1px solid #e53935;
  transition: 0.4s ease;
}
.single-product .product_info .product_link a:hover {
  color: #e53935;
  background-color: #f7f7f7;
  transition: 0.4s ease;
}
@media screen and (min-width: 771px) {
  #product_image_slider_wrap + .product_info {
    margin-top: -15px;
  }
}
@media screen and (max-width: 559px) {
  .single-product .product_info {
    margin-left: 0;
    padding: 10px 20px;
    margin-bottom: 10px;
    float: none;
  }
  .single-product .product_info .product_price s + strong {
    display: inline;
  }
}
@media screen and (min-width: 771px) {
  #product_image_slider_wrap {
    width: auto;
  }
  #product_image_slider_wrap #loader {
    top: 48.9%;
    left: 43.75%;
  }
  #product_image_slider {
    width: 74.6%;
    height: 0;
    padding-bottom: 49.3%;
  }
  #product_image_slider img {
    width: 100%;
    height: auto;
  }
  .nivo-controlNav {
    width: 22.5%;
  }
  .nivo-controlNav a img {
    width: 100%;
    height: auto;
  }
}

/*---------------
会社案内
---------------*/
#company_info dt {
  font-size: inherit;
}

/*---------------
お知らせ
---------------*/
#news_list li {
  font-size: 14px;
}
#news_list li .title {
  width: auto;
  padding-top: 5px;
}

/*--------
投稿カテゴリ
---------*/
#post_title h2 {
  font-size: 20px;
  line-height: 1.3em;
}
#post_list .desc {
  margin-bottom: 0.5em;
  line-height: 2em;
}
#post_list .desc + a {
  font-size: 14px;
}
#post_list .info ul.meta {
  padding-top: 15px;
  font-size: 12px;
}
#post_list .image:hover img {
  opacity: 0.8;
}
@media screen and (min-width: 768px) {
  #post_list .image {
    width: 31%;
    float: right;
  }
  #post_list .image img {
    width: 100%;
    height: auto;
  }
  #post_list .info {
    width: 63.75%;
    float: left;
  }
}
@media only screen and (max-width: 767px) {
  #post_list article {
    padding-bottom: 30px;
  }
}

/*---------------
ウィジェット
---------------*/
/* テキスト */
.widget_text {
  font-size: 13px;
}
.widget_text .textwidget p {
  margin-bottom: 0.5em;
  line-height: 2;
}
/* 最近の投稿 */
.widget_recent_entries {
  font-size: 14px;
}
/* カテゴリ */
.widget_categories {
  font-size: 14px;
}
/* 商品カテゴリ */
.widget_product_category_list {
  font-size: 14px;
}
/* お知らせ一覧 */
.tcdw_news_list_widget a.title {
  font-size: 14px;
}
/* 画像リンク */
.tcdw_product_list_widget a.image:hover img {
  opacity: 0.8;
}

/* おすすめ商品ウィジェット */
.tcdw_recommend_product_list_widget ol {
  display: flex;
  flex-wrap: wrap;
}
.tcdw_recommend_product_list_widget li {
  float: none;
}

/*---------------
障害
---------------*/
/* 写真が拡大されてしまう問題 indexの投稿リストのアイキャッチ画像 */
#index_blog ol li .image img {
  contain-intrinsic-size: auto 100px;
}
/* 写真が拡大されてしまう問題 サイドバー最近の投稿のアイキャッチ画像 */
.tcd_recent_post_widget a.image img {
  contain-intrinsic-size: auto 65px;
}
