/**
Theme Name: Astra Child
Theme URI: https://wpastra.com/
Author: Brainstorm Force
Author URI: https://wpastra.com/about/?utm_source=theme_preview&utm_medium=author_link&utm_campaign=astra_theme
Template: astra
Description: The Astra WordPress theme is lightning-fast and highly customizable. It has over 1 million downloads and the only theme in the world with 5,700+ five-star reviews! It’s ideal for professional web designers, solopreneurs, small businesses, eCommerce, membership sites and any type of website. It offers special features and templates so it works perfectly with all page builders like Spectra, Elementor, Beaver Builder, etc. Fast performance, clean code, mobile-first design and schema markup are all built-in, making the theme exceptionally SEO-friendly. It’s fully compatible with WooCommerce, SureCart and other eCommerce plugins and comes with lots of store-friendly features and templates. Astra also provides expert support for free users. A dedicated team of fully trained WordPress experts are on hand to help with every aspect of the theme. Try the live demo of Astra: https://zipwp.org/themes/astra/
Version: 4.11.7
Requires at least: 5.3
WC requires at least: 3.0
WC tested up to: 9.6
Tested up to: 6.8
Requires PHP: 5.3
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: astra
Domain Path: /languages
Tags: custom-menu, custom-logo, entertainment, one-column, two-columns, left-sidebar, e-commerce, right-sidebar, custom-colors, editor-style, featured-images, full-width-template, microformats, post-formats, rtl-language-support, theme-options, threaded-comments, translation-ready, blog
AMP: true

Astra WordPress Theme, Copyright 2020 WPAstra.
Astra is distributed under the terms of the GNU GPL.

Astra is based on Underscores https://underscores.me/, (C) 2012-2020 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of.
Nicolas Gallagher and Jonathan Neal https://necolas.github.com/normalize.css/

Astra icon font is based on IcoMoon-Free vector icon by Keyamoon.
IcoMoon-Free vector icon distributed under terms of CC BY 4.0 or GPL. (https://creativecommons.org/licenses/by/4.0/ or https://www.gnu.org/licenses/gpl.html)
Source: http://keyamoon.com/

Flexibility is a JavaScript polyfill for Flexbox By Jonathan Neal, 10up. (https://github.com/jonathantneal/flexibility)
Licensed under MIT ( https://github.com/jonathantneal/flexibility/blob/master/LICENSE.md )

Screenshot image is a collage of actual sites created using the Astra WordPress Theme.

Icons used in the Screenshot image are all licensed under Creative Commons ( CC BY 4.0 ) License ( https://fontawesome.com/license/free )
https://fontawesome.com/v5.15/icons/store?style=solid
https://fontawesome.com/v5.15/icons/shopping-cart?style=solid
https://fontawesome.com/v5.15/icons/pen-square?style=solid
https://fontawesome.com/v5.15/icons/user-tie?style=solid
https://fontawesome.com/v5.15/icons/user-tie?style=solid

Illustrations used in the Screenshot images are all licensed under Creative Commons ( CC0 ) License ( https://gumroad.com/l/humaaans )
https://websitedemos.net/web-design-agency-08/wp-content/uploads/sites/796/2021/05/standing-24.png
https://websitedemos.net/web-design-agency-08/wp-content/uploads/sites/796/2021/05/sitting-2.png

Hand-drawn illustrations used are created by Brainstorm Force and released under Creative Commons ( CC0 ) License.
https://websitedemos.net/web-design-agency-08/wp-content/uploads/sites/796/2021/05/girl-with-image-container.png
https://websitedemos.net/web-design-agency-08/wp-content/uploads/sites/796/2021/05/boy-with-code-container.png
https://websitedemos.net/web-design-agency-08/wp-content/uploads/sites/796/2021/05/web-browser.png

The same site as screenshot can be imported from here https://websitedemos.net/web-design-agency-08/.

For more information, refer to this document on how to create a page like in the screenshot - https://wpastra.com/docs/replicating-the-screenshot/.

Astra default breadcrumb is based on Breadcrumb Trail by Justin Tadlock. (https://github.com/justintadlock/breadcrumb-trail)
Breadcrumb Trail is distributed under the terms of the GNU GPL v2 or later.

Astra local fonts feature is based on Webfonts Loader by WordPress Themes Team (WPTT). (https://github.com/WPTT/webfont-loader)
Licensed under MIT ( https://github.com/WPTT/webfont-loader/blob/master/LICENSE )

/* Note: The CSS files are loaded from assets/css/ folder. */

/* data-aos="zoom-in" を持つ全ての要素のアニメーション時間を変更 */
[data-aos="zoom-in"] {
	/* 1000ms (1秒) に変更 */
	transition-duration: 1000ms !important;
}

/* data-aos="fade-up" を持つ全ての要素のアニメーション時間を変更 */
[data-aos="fade-up"] {
	/* 2000ms (2秒) に変更 */
	transition-duration: 2000ms !important;
}

/* ----- 共通設定 ----- */
/* H2見出し */
.ribbon-h2 {
  border-bottom: 3px solid #729c03;
}
.ribbon-h2 h2 {
  --c: #729c03;
  --slant: 40px; /* 斜めの出っ張り分 */

  display: inline-block;
  position: relative;
  font-weight: bold;
  padding: 0.5em 3.4em 0.3em 0.6em;
  color: #fff;
  background:
    linear-gradient(
      45deg,
      var(--c) 0,
      var(--c) calc(100% - var(--slant)),
      transparent calc(100% - var(--slant))
    );
}

/* ----- ヘッダー ----- */
/* ティッカー */
.header-ticker {
	width: 100%;
	overflow: hidden;
	color: #fff;
	font-size: 12px;
	padding: 0;
}

.ticker-inner {
	display: inline-block;
	white-space: nowrap;
	padding-left: 100%;
	animation: ticker-scroll 18s linear infinite;
}

.ticker-inner span {
	margin-right: 2rem;
}

@keyframes ticker-scroll {
	0% {
		transform: translateX(0);
	}
	100% {
		transform: translateX(-100%);
	}
}

/* 今日の日付 */
.header-today {
	font-size: 13px;
	color: #fff;
	white-space: nowrap;
}

/* ----- フッターメニュー ----- */
.site-footer .wp-block-list li {
	padding: 5px 0 !important;
	color: #fff !important;
}

.site-footer .wp-block-list .wp-block-list {
	padding-left: 20px !important;
}

/* ----- サイドバー ----- */
.sidebar-main .wp-block-search__input {
	width: 50% !important;
}

.sidebar-main .wp-element-button {
	font-size: 14px !important;
}

.sidebar-main .wp-block-heading {
	font-size: 16px !important;
	padding-bottom: 10px !important;
}

.sidebar-main ul {
	padding-left: 1em !important;
}

.sidebar-main ul li {
	font-size: 14px !important;
	list-style: circle inside !important;
}

/* ----- トップページ ----- */
/* 今日の注目 */
.s-today-item {
	padding: 10px 10px 20px 10px;
}
.s-today-item:last-child {
	padding-bottom: 0;
}

.s-today-item .s-today-title {
	margin-bottom: 10px;
	padding-left: 0.5em;
	font-size: 19px;
	border-left: solid 5px #7b035a;
}

.s-today-item .s-today-content {
	font-size: 15px;
	line-height:1.4;
}

.s-today-item .s-today-content p {
	margin: 0;
	padding: 0;
}

/* 今日の注目 */
#Category .wp-block-button__link {
	color: #fff;
	border-radius: 6px;
	border-color: transparent;
  	transition: background-color 0.3s ease;
}
#Category .wp-block-button__link:hover {
	filter: brightness(1.15);
}
#Category .uagb-block-0c402f84 .wp-block-button__link { background:#5298F2; }
#Category .uagb-block-5b978da9 .wp-block-button__link { background:#7b6003; }
#Category .uagb-block-6f86b3e7 .wp-block-button__link { background:#729c03; }
#Category .uagb-block-23456fbf .wp-block-button__link { background:#F4A53D; }
#Category .uagb-block-b18674ae .wp-block-button__link { background:#035a7b; }

/* ----- 特集記事一覧 ----- */
#news-kiji .rssdata{
	display:flex;
	gap:14px;
	padding:14px 0;
	border-bottom:1px solid #e5e5e5;
}

#news-kiji .rssdata .pics{
	overflow:hidden;
}

#news-kiji .rssdata img{
	width:120px;
	height:90px;
	object-fit:cover;
	display:block;
	border:1px solid #ddd;
	transition: transform .6s ease;
}
#news-kiji .rssdata a:hover img {
	transform: scale(1.1);
}

#news .kbn-filter select,
.kbn-filter select {
	padding: 8px 10px;
	border: 1px solid #ddd;
	border-radius: 6px;
	max-width: 260px;
}

#news-kiji .rssdata p{ margin:0; padding:0; }
#news-kiji .rssdata .kbn{ font-size:13px !important; }
#news-kiji .rssdata .Date{ color:#666; font-size:13px !important; }
#news-kiji .rssdata .title{ margin:0 0 5px; font-size:15px !important; font-weight:600; }
#news-kiji .rssdata .feedTitle{ color:#333; font-size:12px !important; }

/* ===== Pager (画像の感じ：ボックス + current塗り) ===== */
#news-kiji .listguid{ margin: 0; text-align:left; }
#news-kiji .listguid p{ margin:0; display:flex; gap:6px; flex-wrap:wrap; align-items:center; }
#news-kiji .listguid .p-box a,
#news-kiji .listguid .current,
#news-kiji .listguid .dots a{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	min-width:34px;
	height:34px;
	padding:0 10px;
	border:1px solid #cfcfcf;
	border-radius:4px;
	text-decoration:none;
	background:#fff;
	color:#333;
	font-weight:600;
}
#news-kiji .listguid .current{
	background:#b06b3c; /* 添付画像の雰囲気に近い */
	color:#fff;
	border-color:#b06b3c;
}
#news-kiji .listguid .p-box a:hover,
#news-kiji .listguid .dots a:hover{
	background: #a75f44;
	color: #fff;
}


/* ----- 暮らしに役立つ ----- */
	.shopnet-gomi-head{margin:0 0 8px;}
	.shopnet-gomi-label{font-size:14px;}
	.shopnet-gomi-select{max-width:220px;}
	.shopnet-gomi-area-title{font-weight:700; margin:6px 0 8px;}
	.shopnet-gomi-table{width:100%; border-collapse:collapse; font-size:14px;}
	.shopnet-gomi-table th,.shopnet-gomi-table td{border:1px solid #ddd; padding:6px 8px;}
	.shopnet-gomi-table th{background:#f7f7f7;}
	.shopnet-gomi-table .gomi-date{white-space: nowrap;}
	.shopnet-gomi-note{font-size:12px; color:#666; margin-top:8px; line-height:1.3;}
	.shopnet-gomi-note a{color:#7b2403;}
	.shopnet-gomi-note a:hover, .shopnet-gomi-note a:focus{text-decoration:underline;}
	.shopnet-gomi-empty{padding:10px; border:1px solid #ddd; background:#fff;}
	.shopnet-gomi-result.is-loading{opacity:.6;}

	#gomi-area table td:first-child{white-space: nowrap; min-width:100px}

/* ----- プレスリリース一覧 ----- */
/* ページ上部 */
#new-kiji p {
	margin: 0;
	padding: 0;
	font-size: 16px;
}

#new-kiji .prw{
	padding: 0;
	font-size: 12px;
	display: table-cell;
	text-align: right;
}
#new-kiji .prw .txt {
	vertical-align: middle;
}

/* ページネーション、一覧 */
.sn-press-list .sn-press-item{
	display:flex;
	gap:14px;
	padding:14px 0;
	border-bottom:1px solid #e5e5e5;
}

.sn-press-thumb {
	overflow:hidden;
}

.sn-press-thumb img{
	width:120px;
	height:90px;
	object-fit:cover;
	display:block;
	border:1px solid #ddd;
	transition: transform .6s ease;
}
.sn-press-thumb a:hover img {
	transform: scale(1.1);
}

.sn-press-item p{ margin:0; padding:0; }
.sn-press-kbn{ font-size:13px !important; }
.sn-press-date{ color:#666; font-size:13px !important; }
.sn-press-title{ margin:0 0 5px; font-size:15px !important; font-weight:600; }
.sn-press-company{ color:#333; font-size:12px !important; }

/* ===== Pager (画像の感じ：ボックス + current塗り) ===== */
.sn-press-pager{ margin: 0; text-align:left; }
.sn-press-pager p{ margin:0; display:flex; gap:6px; flex-wrap:wrap; align-items:center; }
.sn-press-pager .p-box a,
.sn-press-pager .current,
.sn-press-pager .dots a{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	min-width:34px;
	height:34px;
	padding:0 10px;
	border:1px solid #cfcfcf;
	border-radius:4px;
	text-decoration:none;
	background:#fff;
	color:#333;
	font-weight:600;
}
.sn-press-pager .current{
	background:#b06b3c; /* 添付画像の雰囲気に近い */
	color:#fff;
	border-color:#b06b3c;
}
.sn-press-pager .p-box a:hover,
.sn-press-pager .dots a:hover{
	background: #a75f44;
	color: #fff;
}

/* ===== Detail ===== */
.sn-press-detail-title{ margin:10px 0 14px; }
.sn-press-summary{ margin:16px 0; padding-top:16px; line-height:1.8; border-top:1px solid #ccc; }
.sn-press-caution{ margin:18px 0; padding:12px; border:1px solid #ddd; background:#fafafa; font-size:14px; }
.sn-press-back{ margin:18px 0 10px 0; }
.sn-press-back a{
	padding: 1px 10px;
	font-size:12px;
	color:#555;
	text-decoration:none;
	padding:6px 10px;
	border:1px solid #ccc;
	border-radius:4px;
	background:#D5EAD8;
 }
.sn-press-back a:hover{
	background:#fff;
}

/* 添付画像ブロック（release.phpの下部にあった並びを再現） */
.sn-press-pics{
	margin:18px 0;
	display:flex;
	flex-wrap:wrap;
	gap:10px;
}
.sn-press-pic{
  width:240px;
  border:1px solid #ddd;
  background:#fff;
}
.sn-press-pic-img img{
  width:100%;
  height:auto;
  display:block;
}
.sn-press-pic-cap{
  padding:8px;
  font-size:0.95em;
  line-height:1.6;
}

/* ----- おすすめサイト ----- */
#osusume .uagb-ifb-image-content {
	overflow: hidden;
}

#osusume .uagb-ifb-image-content img {
	transition: transform 0.4s ease;
	transform-origin: center center;
}

#osusume .uagb-infobox__content-wrap:hover 
.uagb-ifb-image-content img {
	transform: scale(1.1);
}

#osusume .uagb-ifb-title-wrap .uagb-ifb-title,
#osusume h2.uagb-ifb-title {
  font-size: 16px !important;
}

#osusume .uagb-ifb-desc a {
  font-size: 14px !important;
  color: #7b2403 !important;
}

@media (max-width: 768px) {
	.my-4col .wp-block-columns {
		display: grid;
		grid-template-columns: repeat(2, 1fr);
	}

  /* 2列グリッド：列間・行間を統一 */
  .my-4col .wp-block-columns{
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 14px !important;                 /* ← ここで“行間/列間”を統一 */
    align-items: stretch !important;      /* 行の高さに合わせて伸ばす */
    margin: 0 !important;                 /* WP標準の余白をリセット */
  }

  /* 2つ目以降の“段(block-columns)”の間隔だけ一定にする */
  .my-4col .wp-block-columns + .wp-block-columns{
    margin-top: 0 !important;          /* ← 段と段の間隔（好みで調整） */
  }

  /* grid化すると残りがちなflex/幅/余白をリセット */
  .my-4col .wp-block-column{
    width: auto !important;
    margin: 0 !important;
    height: 100% !important;
  }

  /* カードの外枠（borderが付いている要素）を“必ず行の高さまで伸ばす” */
  .my-4col .wp-block-column > .wp-block-uagb-container{
    height: 100% !important;
  }

  /* infobox本体も縦方向に伸びるように */
  .my-4col .uagb-infobox__content-wrap,
  .my-4col .uagb-ifb-content{
    height: 100% !important;
    display: flex !important;
    flex-direction: column !important;
  }

  /* タイトル/説明文の上下marginで高さがブレやすいので、必要なら軽くリセット */
  .my-4col .uagb-ifb-title{ margin: 10px 0 6px !important; }
  .my-4col .uagb-ifb-desc{  margin: 0 !important; }
}


/* ----- コミュニティ施設一覧 ----- */
#community table th {
	text-align: left;
}

/* ----- ブログ記事 ----- */
/* 見出し */
body.single-post h2:not(.uagb-heading-text) {
	padding: 0.5em;
	background: aliceblue;
	box-shadow: 0 0 4px rgba(0, 0, 0, 0.23);
}

body.single-post h3 {
	padding: 0.25em 0.5em;
	background: transparent;/*背景透明に*/
	border-left: solid 5px #7db4e6;/*左線*/
}

.blog-table tr,
.blog-table th,
.blog-table td {
	 border: 1px solid #eee;
}

/* ボタン */
#new-blog .wp-block-button {
	display: table !important;
	margin-left: auto !important;
	margin-right: auto !important;
}


@media screen and (max-width:640px) {
	input[type="button"],input[type="submit"] {
		-webkit-appearance: none;
	}

	.break:before {
		content: "\A";
		white-space: pre;
	}

	/* トップへ戻る */
	.ast-scroll-to-top-right,
	.ast-scroll-to-top-left {
		bottom: 80px !important;
	}

	body.ast-plain-container .site-main {
		padding-top: 40px;
	}
	body.home .site-main {
		padding-top: 0;
		padding-bottom: 0;
	}

	/* 一覧を見る */
	#tokushu .disp-list a,
	#press .disp-list a {
		font-size: 17px;
	}

	/* 今日の注目 */
	.s-today-item .s-today-content {
		font-size: 17px;
	}

	/* 暮らしに役立つ */
	.shopnet-gomi-label {font-size:17px;}
	.shopnet-gomi-table {font-size:17px;}
	.shopnet-gomi-note {font-size:15px;}

	/* 特集記事 */
	.shopnet-feed-date {font-size: 15px;}
	.shopnet-feed-title {font-size: 17px;}
	.shopnet-feed-by {font-size: 15px;}
	.shopnet-feed-by a {font-size: 15px;}

	/* プレスリリース */
	.shopnet_press_list .r_date {font-size: 15px;}
	.shopnet_press_list .r_title a{font-size: 17px;}

	/* ----- 個別ページ ----- */
	/* 特集記事一覧ページ */
	#news-kiji .rssdata .pics{
		width:110px;
		height:82px;
		flex:0 0 110px;
		overflow:hidden;
	}

	#news-kiji .rssdata img{
		width:100%;
		height:100%;
		object-fit:cover;
		display:block;
	}

	#news-kiji .rssdata .kbn { font-size:15px !important; }
	#news-kiji .rssdata .Date { font-size:15px !important; }
	#news-kiji .rssdata .title { font-size:17px !important; }
	#news-kiji .rssdata .feedTitle { font-size:15px !important; }

	/* プレスリリース一覧ページ */
	.sn-press-kbn { font-size:15px !important; }
	.sn-press-date { font-size:15px !important; }
	.sn-press-title { font-size:17px !important; }
	.sn-press-company { font-size:15px !important; }

	.sn-press-thumb {
		width:110px;
		height:82px;
		flex:0 0 110px;
		overflow:hidden;
	}

	.sn-press-thumb img{
		width:100%;
		height:100%;
		object-fit:cover;
		display:block;
	}

	/* フッターメニュー */
	.site-footer .wp-block-list li {
		padding: 10px 0 !important;
	}

	/* 初期は下に隠しておく＋フェード */
	.bnav_bottom_nav_wrapper{
		display:flex !important;           /* プラグイン上書き */
		position:fixed; left:0; right:0; bottom:0; /* 念のため固定 */
		z-index:9999;

		opacity:0;
		transform: translateY(100%);       /* 画面外に退避 */
		pointer-events:none;

		transition:
		transform .32s ease,             /* スライド */
		opacity   .28s ease;             /* フェード */
		will-change: transform, opacity;   /* モバイルで滑らかに */
	}

	/* 画面最下部にスマホ用固定メニューの表示 */
	/* 表示時：スッと上がってくる */
	.bnav_bottom_nav_wrapper.show{
		opacity:1;
		transform: translateY(0);
		pointer-events:auto;
	}

	/* iPhoneのホームインジケータを避ける（必要なら） */
	.bnav_bottom_nav_wrapper{
		padding-bottom: calc(8px + env(safe-area-inset-bottom));
	}

	/* ユーザーが簡易表示を希望している場合はアニメーションを無効化 */
	@media (prefers-reduced-motion: reduce){
		.bnav_bottom_nav_wrapper{ transition:none; }
	}

	/* コンテナを横並び＋等分 */
	/* コンテナは横幅いっぱいに */
	.bnav_main_menu_container { width: 100%; }

	/* ULを等分カラムに（アイテム数に応じて自動調整） */
	.bnav_main_menu {
		display: grid !important;
		grid-template-columns: repeat(auto-fit, minmax(0, 1fr));
		align-items: stretch;
		list-style: none;
		margin: 0;
		padding: 0;
	}

	/* 各LIを等幅に。古い指定をリセット */
	.bnav_main_menu > li {
		margin: 0 !important;
		width: auto !important;
		max-width: none !important;
		float: none !important;
		box-sizing: border-box;
		text-align: center;
	}

	/* クリック面を全面化して中央寄せ（アイコン＋テキスト縦積み） */
	.bnav_main_menu > li > a.menu-link {
		display: flex !important;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		gap: .25rem;              /* アイコンとテキストの間隔 */
		min-height: 56px;         /* 好みで高さ調整 */
		padding: .5rem 0;
		text-decoration: none;
	}

	/* アイコン回り（任意で微調整） */
	.bnav_main_menu .bnav_flex { display: contents; } /* 余計なラッパーを無視 */
	.bnav_main_menu .icon_wrapper { line-height: 1; }
	.bnav_main_menu .text_wrapper { font-size: .85rem; }

	/* （保険）5分割固定などの強い指定を無効化したいとき */
	.bnav_main_menu > li[style],
	.bnav_main_menu > li { width: auto !important; }

	/* アイコンを中央に配置、下に5px余白 */
	.bnav_main_menu .icon_wrapper {
		display: block;        /* ブロック化して中央寄せが効くように */
		text-align: center;    /* 中央寄せ */
		margin: 0 auto 5px;    /* 下に5pxの余白 */
	}

	/* アイコンとテキストを縦積みにするための保険 */
	.bnav_main_menu .bnav_flex {
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
	}
}