/*
Theme Name: Twenty Twenty-Four Child
Theme URI: 
Author: rpstx
Author URI: 
Description: Twenty Twenty-Four Child Theme
Requires at least: 7.0
Tested up to: 7.0
Requires PHP: 5.7
Version: 
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Template: twentytwentyfour
Text Domain: twenty-twenty-four-child
Tags: 
*/
/* =====================================================
   Footer CTA
===================================================== */

.footer-cta {
   position:fixed;
	right:10px;
	bottom:10px;
	z-index:9999;

	opacity:0;
	transform:translateX(40px);

	pointer-events:none;

	transition:
		opacity .3s ease,
		transform .45s cubic-bezier(.22,1,.36,1);

   
    background: #fff;
    border: 1px solid #ccc;
    border-radius: 10px !important;
    padding: 1rem;
}

.footer-cta.is-visible{
	opacity:1;
	transform:translateX(0);
	pointer-events:auto;

}

/* 非表示（フェードアウトのみ） */
.footer-cta.is-hiding{

	opacity:0;
	transform:translateX(0);
	pointer-events:none;

}

.footer-cta__container{
	width:440px;
	max-width:calc(100vw - 32px);
	position:relative;
}

/* -----------------------
カード
----------------------- */

.footer-cta__card{

	background:#fff;

	border-radius:24px;

	padding:20px;

	box-shadow:
		0 20px 60px rgba(0,0,0,.18);

	display:flex;

	flex-direction:column;

	gap:24px;

	overflow:hidden;

}

/* -----------------------
画像＋テキスト
----------------------- */

.footer-cta__top{

	display:flex;

	align-items:flex-start;

	gap:20px;
    padding:1rem;

}
.footer-cta__top img{width:140px !important;}

.footer-cta__top .footer-cta__image{

	width:100px !important;

	flex-shrink:0;

	border-radius:12px;

	display:block;

}

.footer-cta__content{

	flex:1;

}

.footer-cta__label {
    font-size: 13px;
    font-weight: 700;
    color: #fff;
    margin-bottom: 10px;
    margin-top: 0;
    background: #ff7a00;
    border-radius: 10px;
    text-align: center;
    height: 25px;
    line-height: 25px;
}


.footer-cta__content h2{

	font-size:20px;

	line-height:1.35;

	margin:0 0 12px;

	font-weight:700;

	color:#333;

}

.footer-cta__content h2 span{

	color:green

}

.footer-cta__text {
    margin: 0;
    font-size: 13px;
    line-height: 1.4;
    color: #333;
}

/* -----------------------
ボタン
----------------------- */

.footer-cta__buttons{

	display:flex;

	flex-direction:column;

	gap:12px;

}

.footer-cta__button{

	width:100%;

	height:54px;

	display:flex;

	align-items:center;

	justify-content:center;

	text-decoration:none;

	font-weight:700;

	font-size:16px;

	border-radius:999px;

	transition:.25s;

}

.footer-cta__button--white{

	background:#f5f5f5;

	color:#111;

}

.footer-cta__button--black{

	background:#111;

	color:#fff;

}

.footer-cta__button:hover{

	transform:translateY(-2px);

}

/* -----------------------
閉じる
----------------------- */

.footer-cta__close {
    position: absolute;
    right: -12px;
    top: -12px;
    width: auto;
    height: auto;
    border: none;
    border-radius: 50%;
    background: #fff;
    /* color: #333; */
    font-size: 30px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 10;
    /* box-shadow: 0 10px 24px rgba(0, 0, 0, .18); */
}

/* -----------------------
SP
----------------------- */

@media (max-width:768px){

	.footer-cta{

		right:12px;

		left:12px;

		bottom:12px;

	}

	.footer-cta__container{

		width:auto;

		max-width:none;

	}

	.footer-cta__top{

		gap:16px;

	}

	.footer-cta__image{

		width:120px;

	}

	.footer-cta__content h2{

		font-size:20px;

	}

	.footer-cta__text{

		font-size:13px;

	}

	.footer-cta__button{

		height:50px;

		font-size:15px;

	}

}