/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* Add your custom styles here */


/* カテゴリーボタン全体 */
.color_categ_btn {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	align-items: center;
}

/* 各カテゴリーボタン */
.color_categ_btn .category-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 5px 10px;
	border-radius: 999px;
	font-size: 12px;
	font-weight: 500;
	line-height: 1;
	text-decoration: none;
	white-space: nowrap;
	transition: opacity 0.2s ease;
}

/* ホバー */
.color_categ_btn .category-btn:hover {
	opacity: 0.8;
}



/* ======================================
 トップスライダー
====================================== */

.kp-top-slider,
.kp-top-slider-fallback {
	width: calc(100vw - 300px);
	height: 360px;
	position: relative;
	overflow: hidden;

	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
}

/* スライド1枚1枚 */
.kp-top-slide {
	height: 360px;

	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
}


.kp-top-slider .swiper-wrapper {
	display: flex;
}

.kp-top-slide{
	display: flex;
	align-items: center;
}

.kp-top-slider .swiper-slide {
	flex-shrink: 0;
	width: 100%;
}

.kp-top-slide-overlay{
    background:rgba(000, 000, 000,.375);
	/*background:rgba(130, 143, 255,.35);*/
	/*mix-blend-mode: multiply;  */
	width: 100%;
}

.swiper-wrapper{
	vertical-align: middle;
}

.kp-top-slide-title{
	font-size:28px !important;
	font-weight:700 !important;
	color:#fff !important;
	line-height:1.2 !important;
	margin-bottom:10px;
	/*text-shadow: var( --e-global-color-primary ) 1px 0 7px;*/
	text-shadow: #000 1px 0 3px;
}

.kp-top-slide-inner{
	padding:25px 80px;
}

.kp-top-slide-button{
	background-color:white;
	font-size:16px;
	color:var( --e-global-color-d501410 );
	padding:7px 12px;
	border-radius:100px;
	border:2px solid var( --e-global-color-d501410 );
	transition:.3s;
}

.kp-top-slide-button:hover{
	color:white;
	background-color:var( --e-global-color-d501410 );
}

/* スマホ */
@media (max-width: 767px){

	.kp-top-slider,
	.kp-top-slider-fallback,
	.kp-top-slide{
		height: 250px;
		width: 100vw;
	}
	
	.kp-top-slide-title{
	font-size:17px !important;
}
	.kp-top-slide-button{
		font-size:14px;
	}
	
.kp-top-slide-inner{
	padding:20px 55px;
}

}

.kp-top-slider-prev,
.kp-top-slider-next{
	position:absolute;
	top:50%;
	transform:translateY(-50%);
	z-index:10;

	width:30px;
	height:30px;

	border-radius:50%;
	background:rgba(255,255,255,.9);

	cursor:pointer;
	transition:.3s;
}

.kp-top-slider-prev{
	left:20px;
}

.kp-top-slider-next{
	right:20px;
}

.kp-top-slider-prev:hover,
.kp-top-slider-next:hover{
	background:#fff;
}

.kp-top-slider-prev::before,
.kp-top-slider-next::before{
	content:"";
	position:absolute;

	top:50%;
	left:50%;

	width:10px;
	height:10px;

	border-top:3px solid var( --e-global-color-d501410 );
	border-left:3px solid var( --e-global-color-d501410 );
}

.kp-top-slider-prev::before,
.kp-top-slider-next::before{
	content:"";
	position:absolute;

	top:50%;
	left:50%;

	width:10px;
	height:10px;

	border-top:3px solid var( --e-global-color-d501410 );
	border-left:3px solid var( --e-global-color-d501410 );
}


.kp-top-slider-prev::before{
	transform:
	translate(-35%,-50%)
	rotate(-45deg);
}

.kp-top-slider-next::before{
	transform:
	translate(-65%,-50%)
	rotate(135deg);
}


/* ======================================
個別ページのレイアウト
====================================== */

table a{
	color:var( --e-global-color-primary ) !important;
}

body.single-post h1{
	    font-family: "Noto Sans JP", Sans-serif !important;
    font-size: 26px !important;
    font-weight: 700 !important;
    line-height: 1.2em !important;
    color: var(--e-global-color-text) !important;
}
body.single-post h2,body:not(.freeheader).wp-singular .site-main h2{
	color:black;
	font-size:22px !important;
	font-weight:bold !important;
	line-height:1.3em !important;
	border-left:solid 6px var( --e-global-color-primary );
	border-bottom:solid 2px var( --e-global-color-primary );
	margin:35px 0 30px 0;
	padding-left:0.5em;
	padding-bottom:0.2em;
}

body:not(.home) h2{
}

body.single-post h3,body:not(.freeheader).wp-singular .site-main h3{
	font-size:20px !important;
	font-weight:bold !important;
	line-height:1.3em !important;
	border-bottom:dotted 2px  var( --e-global-color-primary );
	padding-bottom:0.2em;
	margin:30px 0 25px 0;
}

body.single-post h4,body:not(.freeheader).wp-singular .site-main h4{
	font-size:18px !important;
	font-weight:bold !important;
	line-height:1.3em !important;
	border-left:solid 6px  var( --e-global-color-primary );
	padding-left:0.5em;
	margin:25px 0 20px 0;
}


/* メインコンテンツのスタイル */
body:not(.child-dl.wp-singular.basic-page,.child-cyuoukai.wp-singular.basic-page).wp-singular.basic-page .site-main h1{
			border:double 4px;
	padding:15px 20px;
	border-radius:100px;
}
body.wp-singular.basic-page .site-main h2{
		font-size:28px;
		padding-bottom:0.25em;
	margin-top:0.75em;
}
body.wp-singular.basic-page .site-main h3{
font-weight:800;
	font-size:22px;
	margin-top:1em;
	border-left:10px solid;
	padding-left: 0.5em;
}
body.wp-singular.basic-page .site-main h4{
	display:inline;
	border-bottom:double 3px;
	padding-bottom:0.1em;
	font-weight:700;
}

@media (max-width: 767px){
	body.wp-singular.basic-page .site-main  h2{
		font-size:24px;
	}
	body.wp-singular.basic-page .site-main  h3{
		font-size:20px;
	}
	body.wp-singular.basic-page .site-main  h4{
		font-size:19px;
		display:block;
		padding-bottom:0.3em;
		margin-top:0.75em;
	}
}

/* 組合・組合員支援内のカラーとスタイル */
body.wp-singular.child-shien.basic-page .site-main h1{
	border-color: var( --e-global-color-d7ef442 );
	color: var( --e-global-color-d7ef442 );
}
body.wp-singular.child-shien.basic-page .site-main  h2{
	border-color: var( --e-global-color-d7ef442 );
	border-bottom:dotted 4px var( --e-global-color-d7ef442 );
}
body.wp-singular.child-shien.basic-page .site-main h3{
	border-color: var( --e-global-color-d7ef442 );
}
body.wp-singular.child-shien.basic-page .site-main h4{
	border-color: var( --e-global-color-d7ef442 );
}




/* 組合設立支援のカラー */

body.wp-singular.child-kumiai-shien.basic-page .site-main h1{
	border-color: var( --e-global-color-506230d );
	color: var( --e-global-color-506230d );
}
body.wp-singular.child-kumiai-shien.basic-page .site-main  h2{

		border-color: var( --e-global-color-506230d );
	border-bottom:dotted 4px var( --e-global-color-506230d );
}
body.wp-singular.child-kumiai-shien.basic-page .site-main h3{
		border-color: var( --e-global-color-506230d );
}
body.wp-singular.child-kumiai-shien.basic-page .site-main h4{
		border-color: var( --e-global-color-506230d );
}

/* 様式ダウンロードのカラー */


body.wp-singular.child-dl.basic-page .site-main  h2{
		border-color: var( --e-global-color-6a7a264 );
	border-bottom:dotted 4px var( --e-global-color-6a7a264 );
}
body.wp-singular.child-dl.basic-page .site-main h3{
	border-color: var( --e-global-color-6a7a264 );
}

body.wp-singular.child-dl.basic-page .site-main h4{
	border-color: var( --e-global-color-6a7a264 );
}


/* 調査報告・各種資料のカラー */
body.wp-singular.child-houkoku.basic-page .site-main h1{
	border-color: var( --e-global-color-69a7bfd );
	color: var( --e-global-color-69a7bfd );
}
body.wp-singular.child-houkoku.basic-page .site-main  h2{
	border-color: var( --e-global-color-69a7bfd );
	border-bottom:dotted 4px var( --e-global-color-69a7bfd );
}
body.wp-singular.child-houkoku.basic-page .site-main h3{
	border-color: var( --e-global-color-69a7bfd );
}
body.wp-singular.child-houkoku.basic-page .site-main h4{
	border-color: var( --e-global-color-69a7bfd );
}



/* 関係団体のカラー */
body.wp-singular.child-kankei.basic-page .site-main h1{
	border-color: var( --e-global-color-2143a58 );
	color: var( --e-global-color-2143a58 );
}
body.wp-singular.child-kankei.basic-page .site-main  h2{
	border-color: var( --e-global-color-2143a58 );
	border-bottom:dotted 4px var( --e-global-color-2143a58 );
}
body.wp-singular.child-kankei.basic-page .site-main h3{
	border-color: var( --e-global-color-2143a58 );
}
body.wp-singular.child-kankei.basic-page .site-main h4{
	border-color: var( --e-global-color-2143a58 );
}

/* 共催・保険のカラー */

body.wp-singular.child-kyousai.basic-page .site-main h1{
	border-color: var( --e-global-color-cf089ef );
	color: var( --e-global-color-cf089ef );
}
body.wp-singular.child-kyousai.basic-page .site-main  h2{
	border-color: var( --e-global-color-cf089ef );
	border-bottom:dotted 4px var( --e-global-color-cf089ef );
}
body.wp-singular.child-kyousai.basic-page .site-main h3{
	border-color: var( --e-global-color-cf089ef );
}
body.wp-singular.child-kyousai.basic-page .site-main h4{
	border-color: var( --e-global-color-cf089ef );
}

/* 中央会とはのカラー*/
body.wp-singular.child-cyuoukai.basic-page .site-main  h2{
	border-color: var( --e-global-color-primary );
	border-bottom:dotted 4px var( --e-global-color-primary );
}
body.wp-singular.child-cyuoukai.basic-page .site-main h3{
	border-color: var( --e-global-color-primary );
}
body.wp-singular.child-cyuoukai.basic-page .site-main h4{
	border-color: var(--e-global-color-primary);
}


body.single-post .elementor-widget-theme-post-content a,body.wp-singular .site-main .elementor-widget-text-editor a{
	color: var( --e-global-color-d501410 );
}

.single-post vcontent .elementor-widget-theme-post-content,body.wp-singular .site-main .elementor-widget-text-editor {
    overflow-wrap: break-word;
    word-wrap: break-word;

}

body.single-post .wp-block-button__link,
body:not(.news-page-kp .elementor-button,.freecsspage).wp-singular .site-main .elementor-button,
body:not(.freecsspage.wp-singular).wp-singular  .wp-block-file__button{
	background-color: var( --e-global-color-d501410 );
	color:white !important;
	padding:10px 15px;;
	line-height:1em;
	font-size:15px;
	border-radius: 100px;
}

/* スマホ */
@media (max-width: 767px){
	body.single-post .content h1{
    font-size: 22px !important;
}
	body.single-post h2,body:not(.freeheader).wp-singular .site-main h2{
	font-size:20px;
		}
	body.single-post h3,body:not(.freeheader).wp-singular .site-main h3{
	font-size:18px;
	font-weight:bold;
	}
	
body.single-post h4,body:not(.freeheader).wp-singular .site-main h4{
	font-size:15px;
	}
}
/* ======================================
 メインメニュー
====================================== */

/* メインメニュー：通常時の余白とアニメーション */
#mainmanu .elementor-nav-menu--main .elementor-item{
	transition: .25s;
}

/* ホバー時 */
#mainmanu .elementor-nav-menu--main .elementor-item:hover{
	background-color: var(--e-global-color-primary) !important;
	color: #fff !important;
}
/* ホバー時の▼ */
#mainmanu .elementor-item:hover .sub-arrow svg{
	fill: #fff !important;
}

/* 現在のページ */
#mainmanu .elementor-nav-menu--main .elementor-item.elementor-item-active{
	background-color: var(--e-global-color-primary) !important;
	color: #fff !important;
}

/* 子ページ閲覧時：親メニューをアクティブ表示 */
#mainmanu .elementor-nav-menu--main li.current-menu-parent > a.elementor-item,
#mainmanu .elementor-nav-menu--main li.current-page-parent > a.elementor-item,
#mainmanu .elementor-nav-menu--main li.current-menu-ancestor > a.elementor-item,
#mainmanu .elementor-nav-menu--main li.current-page-ancestor > a.elementor-item{
	background-color: var(--e-global-color-primary) !important;
	color: #fff !important;
}

/* 親メニューがアクティブ時の▼ */
#mainmanu .current-menu-parent > a .sub-arrow svg,
#mainmanu .current-page-parent > a .sub-arrow svg,
#mainmanu .current-menu-ancestor > a .sub-arrow svg,
#mainmanu .current-page-ancestor > a .sub-arrow svg{
	fill: #fff !important;
}

/* ホバー時の▼ */
#mainmanu .elementor-item:hover .sub-arrow svg{
	fill: #fff !important;
}

/* 親ページ自身がアクティブのときの▼ */
#mainmanu .elementor-item.elementor-item-active .sub-arrow svg{
	fill: #fff !important;
}

/* ======================================
パンくずリストを整える
====================================== */

.elementor-widget-dce-breadcrumbs {
	font-size:14px !important;
	color:white
}

/* スマホ */
@media (max-width: 767px){
font-size:13px !important;
}


[class*=" eicon-"]{
	font-size:25px !important
}


/* ======================================
検索フォームの見た目
====================================== */
button.e-search-submit  {
	margin-left:0px !important;
}

/* ======================================
タブの見た目
====================================== */

/* タブ：通常 */
.elementor-widget-n-tabs .e-n-tab-title{
	background: #fff !important;
	color: var(--e-global-color-primary) !important;
	border: 2px solid var(--e-global-color-primary) !important;
	border-bottom: 0 !important;
}

/* タブ：アクティブ */
.elementor-widget-n-tabs .e-n-tab-title[aria-selected="true"]{
	background: var(--e-global-color-primary) !important;
	color: #fff !important;
}

/* タブ：ホバー */
.elementor-widget-n-tabs .e-n-tab-title:hover{
	background: var(--e-global-color-primary) !important;
	color: #fff !important;
}

/* タブ内テキスト */
.elementor-widget-n-tabs .e-n-tab-title .e-n-tab-title-text{
	color: inherit !important;
}

/* ======================================
お問合せフォーム
====================================== */
.wpcf7-form span.form-red{
	font-size:0.6em;
	font-weight:bold;
	color:white;
	background-color:red;
	padding:0.2em 0.6em;
	border-radius:0.5em;
	margin-left:0.5em;
	vertical-align:middle;
	line-height:1.5em;
}

.wpcf7-form .text_link{
	font-size:15ps;
	color:var( --e-global-color-d501410 )
}

.eael-contact-form-7 .wpcf7-form label span.wpcf7-list-item-label {
	font-size:15px !important;
	font-weight: medium !important;
}

form.sent p{
display:none !important;
}

/* ======================================
メインコンテンツのマウスホバー
====================================== */

#maincontents > a{
	transition:
		opacity .3s ease,
		transform .3s ease;
}

#maincontents > a:hover{
	opacity: .75;
	transform: translateY(-3px);
}



/* ======================================
   NEW・重要バッジの並び
====================================== */

.kp-post-badges {
	display: inline-flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 5px;
}

/* バッジ共通 */
.kp-post-badge {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 5px 8px !important;
	color: #fff !important;
	font-size: 11px !important;
	font-weight: 700 !important;
	line-height: 1 !important;
	border-radius: 20px !important;
	white-space: nowrap;
}

/* NEW */
.kp-new-badge {
	background: #ff5a5a !important;
}

/* 重要 */
.kp-important-badge {
	background: #d82f3f !important;
}


