/****************************************************************/

/* For All Screens */
section.result-entry-section .result-entry-box a span.material-icons.arrow {
    color: #fff;
    text-align: center;
    background: #00A4C5 0% 0% no-repeat padding-box;
    border-radius: 50%;
    padding: 4px;
}
section.result-entry-section .result-entry-box a span.label {
    color: #00a4c5;
    font-weight: 400;
}

section.result-entry-section .result-entry-box {
    margin: auto;
    text-align: center;
    mix-blend-mode: multiply;
    border-radius: 10px;
    padding: 40px;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    background-image: linear-gradient(to right, rgba(0, 164, 197, .4), rgba(0, 164, 197, .4)), url(/wp-content/themes/redish-2024-theme/assets/entry.jpg);
}
section.result-entry-section {
    padding: 10px 25px 80px 25px;
    margin: auto;
}
section.result-entry-section .container {
    max-width: 1440px;
}
section.result-entry-section .result-entry-box h3 {
    text-align: center;
    letter-spacing: 0.57px;
    color: #FFFFFF;
    font-size: 30px;
    line-height: 40px;
}
section.result-entry-section .result-entry-box p {
    text-align: center;
    letter-spacing: 1.15px;
    color: #FFFFFF;
    font-size: 16px;
    margin: 40px auto;
}
section.result-entry-section .result-entry-box a {
    background: #FFFFFF 0% 0% no-repeat padding-box;
    color: #00a4c5;
    padding: 30px 100px;
    border-radius: 0px;
}

.btn-arrow{
	width:22px;
	transition: transform 0.5s ease;
}

.animated-button:hover .btn-arrow {
    transform: translateX(10px);
}

.top-heading-inner-section .container{
	max-width:1280px;
}

img.img-width {
    width: 200px;
}


section.top-heading-section {
    background: #CCEDF3 0% 0% no-repeat padding-box;
    padding: 25px;
}
section.top-heading-section h1 {
    text-align: left;
    letter-spacing: 0px;
    color: #00A4C5;
    font-size: 25.5px;
    line-height: 30px;
    font-weight: 500;
}
section.top-heading-section span {
    text-align: left;
    letter-spacing: 0px;
    color: #3C3C3C;
    font-size: 14px;
}

section.our-services-section {
    padding: 80px 0px;
}

.our-services-inner-section .container {
    max-width: 1020px !important;
}

section.our-services-section h2 {
    letter-spacing: 0.76px;
    color: #00A4C5;
    font-size: 25.42px;
	font-weight: 500;
}
section.our-services-section span.sub {
    letter-spacing: 1.56px;
    color: #3C3C3C;
    font-size: 13px;
    margin-bottom: 30px;
    display: inline-block;
}

h2.logo-fav:before{
  content:'';
  position:absolute;
  top: 6px;
  left: -12px;
  width:20px;
  height:20px;
  background-image:url('/legacy/wp-content/uploads/2024/07/fav-icon.png');
  background-size:contain;

}
section.our-services-section .image{
	padding-top:10px;
}

section.our-services-section .image img{
	width:100%;
}

section.our-services-section .content h3 {
    letter-spacing: 6.25px;
    color: #4B4949;
    font-size: 25px;
	font-weight:400;
    line-height: 42px;
	margin-bottom:25px;
}
section.our-services-section .content p {
    letter-spacing: 0px;
    color: #000000;
    font-size: 14px;
	font-weight:400;
	line-height:27px;
	margin-top :30px;
}

.container.c-container {
    max-width: 1040px;
}

section.our-services-section .col-sm-12 span {
    letter-spacing: 1.56px;
    color: #3C3C3C;
    font-size: 13px;
    margin-bottom: 30px;
    display: inline-block;
	/*margin-left: 30px;*/
}

.imgc-fluid{
	width:100%;
}

section.our-services-section a.animated-button span.label span {
    font-size: 11px;
    margin: 0px;
    padding: 0px;
    position: relative;
    top: -6px;
}
section.our-services-section a.animated-button span.label {
    text-align: left;
    letter-spacing: 0px;
    color: #FFFFFF;
    font-size: 15px;
    margin-left: 6px;
    margin-top: 4px;
	font-weight:400;
}
section.our-services-section a.animated-button {
    width: auto;
    text-align: center;
    margin: auto;
    position: relative;
    left: 50%;
    transform: translateX(-50%);
    margin-top: 20px;
}

section.our-services-section a.animated-button {
	padding: 8px 22px;
}


section.our-services-section a.animated-button img {
    display: inline-block;
    max-width: 45px;
    background: transparent;
}
/***********************************************************************************/

/*  Desktop & Laptop Screen Devices */

@media screen and (min-width: 991px){

.content.c-padding {
    padding-right: 25px !important;
}
	.l-padding {
    padding-left: 25px !important;
}
}

/***********************************************************************************/

/* Tablet Screen Devices */

@media screen and (max-width: 991px) and (min-width: 768px) {

	    section.result-entry-section .result-entry-box a {
        padding: 25px 80px;
    }
	section.result-entry-section .result-entry-box a {
    background: #FFFFFF 0% 0% no-repeat padding-box;
    color: #00a4c5;
    border-radius: 0px;
}
	section.result-entry-section .result-entry-box p {
        font-size: 16px;
        margin: 20px auto;
    }

	section.our-services-section {
    padding: 40px 20px;
}

	section.our-services-section .col-sm-6 {
        -ms-flex: 0 0 50%;
        flex: 0 0 50%;
        max-width: 50%;
    }

	img.img-width{
		max-width:100%;
		width:200px;
	}

	.mobile-margin{
		padding-top:30px;
	}


}

/****************************************************************/

/* Mobile Screen Size */
@media only screen and (max-width: 767px) {
	section.result-entry-section {
        padding: 10px 0px 60px 0px;
    }
	section.result-entry-section .container {
        max-width: 767px;
    }
	section.result-entry-section .result-entry-box a {
        padding: 15px 40px;
    }
	    section.result-entry-section .result-entry-box p {
        font-size: 13px;
        margin: 10px auto;
    }



	.btn-arrow{
	width:16px;
}

	section.top-heading-section {
    background: #CCEDF3 0% 0% no-repeat padding-box;
    padding: 13px 20px;
}

	img.img-width{
		max-width:100%;
		width:200px;
	}

	.mobile-margin{
		padding-top:30px;
	}

section.our-services-section {
    padding: 40px 20px;
}
section.our-services-section .content {
    padding: 0px 0px;
}
section.our-services-section .content h3 {
    font-size: 18px;
    line-height: 30px;
}
section.our-services-section .content p {
    font-size: 12px;
}
section.our-services-section .image img {
    width: 100%;
    margin-top: 10px;
}

section.our-services-section a.animated-button{margin-bottom:20px;}

	h2.logo-fav:before{
		left:16px;
	}
	.logo-fav{
		margin-left:26px;
	}

	section.services-list-section .services-list-box h4{
		font-size:18px;
		line-height:1.8;
	}



}

/* ===== 資料ダウンロード パスワードゲート / 一覧（React 実装） =====
   レガシー unlayered CSS（section.our-services-section p 等）に勝つため、
   text-align を持つ要素は section.our-services-section で詳細度を上げている。 */
section.our-services-section .fd-gate {
	max-width: 760px;
	margin: 0 auto;
	padding: 20px 0 48px;
	text-align: center;
}
section.our-services-section .fd-gate-title,
section.our-services-section .fd-heading {
	font-size: 28px;
	font-weight: 700;
	color: #231815;
	text-align: center;
	margin: 0 0 28px;
}
section.our-services-section .fd-gate-lead {
	font-size: 15px;
	line-height: 2;
	color: #4b4949;
	text-align: center;
	margin: 0 0 28px;
}
section.our-services-section .fd-gate-cta {
	display: flex;
	justify-content: center;
	margin-bottom: 40px;
}
section.our-services-section .fd-gate-box {
	border: 1px solid #dcdcdc;
	border-radius: 4px;
	max-width: 760px;
	margin: 0 auto;
	padding: 56px 40px;
}
section.our-services-section .fd-gate-input {
	width: 100%;
	background: #ededed;
	border: none;
	border-radius: 2px;
	padding: 18px 20px;
	font-size: 15px;
	color: #231815;
	box-sizing: border-box;
}
section.our-services-section .fd-gate-input:focus {
	outline: none;
	box-shadow: inset 0 0 0 2px #00a4c5;
}
section.our-services-section .fd-gate-show {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	margin: 20px 0 0;
	font-size: 14px;
	color: #4b4949;
	cursor: pointer;
}
section.our-services-section .fd-gate-show input {
	appearance: none;
	-webkit-appearance: none;
	width: 18px;
	height: 18px;
	margin: 0;
	border: 1px solid #c4c4c4;
	border-radius: 3px;
	background: #fff;
	cursor: pointer;
	position: relative;
	flex: none;
}
section.our-services-section .fd-gate-show input:checked {
	background: #00a4c5;
	border-color: #00a4c5;
}
section.our-services-section .fd-gate-show input:checked::after {
	content: "";
	position: absolute;
	left: 6px;
	top: 2px;
	width: 4px;
	height: 9px;
	border: solid #fff;
	border-width: 0 2px 2px 0;
	transform: rotate(45deg);
}
section.our-services-section .fd-gate-error {
	color: #d6492f;
	font-size: 14px;
	text-align: center;
	margin: 16px 0 0;
}
section.our-services-section .fd-gate-actions {
	display: flex;
	justify-content: center;
	margin-top: 28px;
}
section.our-services-section .fd-gate-btn {
	display: inline-flex;
	align-items: center;
	gap: 14px;
	background: #00a4c5;
	color: #fff;
	border: none;
	border-radius: 33px;
	padding: 15px 56px;
	font-size: 16px;
	font-weight: 700;
	line-height: 1;
	cursor: pointer;
	text-decoration: none;
	transition: opacity 0.2s;
}
section.our-services-section .fd-gate-btn:hover {
	opacity: 0.88;
	color: #fff;
	text-decoration: none;
}
section.our-services-section .fd-gate-btn[disabled] {
	opacity: 0.6;
	cursor: default;
}
.fd-gate-arrow {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 26px;
	height: 26px;
	border-radius: 50%;
	background: #fff;
	flex: none;
}
.fd-gate-arrow svg {
	width: 15px;
	height: 15px;
	color: #00a4c5;
}

/* ---- 一覧（タブ + カード） ---- */
section.our-services-section .fd-tabs {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 10px 30px;
	margin: 0 0 44px;
}
section.our-services-section .fd-tab {
	background: none;
	border: none;
	padding: 6px 2px;
	font-size: 15px;
	color: #555;
	cursor: pointer;
	border-bottom: 2px solid transparent;
}
section.our-services-section .fd-tab.is-active {
	color: #00a4c5;
	border-bottom-color: #00a4c5;
	font-weight: 700;
}
section.our-services-section .fd-tab:focus,
section.our-services-section .fd-tab:focus-visible {
	outline: none;
}
section.our-services-section .fd-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 44px 30px;
}
section.our-services-section .fd-card {
	text-align: center;
}
section.our-services-section .fd-card-image {
	display: block;
	background: #f3f3f3;
	position: relative;
	border: 1px solid #e3e3e3;
}
section.our-services-section .fd-badge {
	position: absolute;
	top: 12px;
	left: 12px;
	z-index: 2;
	display: inline-block;
	margin: 0;
	padding: 4px 14px;
	border-radius: 4px;
	font-size: 13px;
	font-weight: 700;
	line-height: 1.5;
	letter-spacing: normal;
	color: #fff;
}
section.our-services-section .fd-badge-popular {
	background: #f08437;
}
section.our-services-section .fd-badge-new {
	background: #5cb85c;
}
section.our-services-section .fd-card-image img {
	width: 100%;
	height: auto;
	display: block;
}
section.our-services-section .fd-card-title {
	font-size: 17px;
	font-weight: 700;
	line-height: 1.6;
	text-align: center;
	margin: 18px 0 18px;
}
section.our-services-section .fd-card-title a {
	color: #231815;
	text-decoration: none;
}
section.our-services-section .fd-card-title a:hover {
	color: #00a4c5;
}
section.our-services-section .fd-card-btn {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	border: 1px solid #00a4c5;
	color: #00a4c5;
	border-radius: 30px;
	padding: 10px 28px;
	font-size: 14px;
	text-decoration: none;
	transition: background 0.2s, color 0.2s;
}
section.our-services-section .fd-card-btn:hover {
	background: #00a4c5;
	color: #fff;
}
section.our-services-section .fd-card-btn .material-icons {
	font-size: 18px;
}
section.our-services-section .fd-empty {
	text-align: center;
	color: #777;
	padding: 40px 0;
}
section.our-services-section .fd-contact-box {
	border: 1px solid #dcdcdc;
	border-radius: 4px;
	margin: 64px auto 64px;
	max-width: 1140px;
	padding: 48px 24px;
	text-align: center;
}
section.our-services-section .fd-contact-box p {
	text-align: center;
	margin: 0 0 28px;
	font-size: 15px;
	color: #4b4949;
}
@media (max-width: 767px) {
	section.our-services-section .fd-grid {
		grid-template-columns: 1fr;
	}
	section.our-services-section .fd-gate-box {
		padding: 32px 18px;
	}
	section.our-services-section .fd-gate-btn {
		padding: 14px 40px;
	}
	section.our-services-section .fd-contact-box {
		margin: 40px 16px 48px;
		padding: 36px 20px;
	}
}

/* レガシー `section.our-services-section span`（margin-left:38px / color / font-size 等）
   が矢印・チェック文字・カード文字に効いてしまうのを打ち消す。 */
section.our-services-section .fd-gate-arrow {
	display: inline-flex;
	margin: 0;
	letter-spacing: normal;
}
section.our-services-section .fd-gate-show span {
	margin: 0;
	letter-spacing: normal;
	color: #4b4949;
	font-size: 14px;
}
section.our-services-section .fd-card-btn span {
	margin: 0;
	letter-spacing: normal;
	color: inherit;
	font-size: 14px;
}
section.our-services-section .fd-card-btn .material-icons {
	font-size: 18px;
	letter-spacing: normal;
}
