@charset "UTF-8";
/* default
---------------------------------------------------- */

:root {
	--black-color: #5b5a5a;
	--gray-color: #f2f2f2;
	--brand-color: #bbb;
	--title-f-size: 28px;
	--sbtitle-f-size: 30px;
	--txt-f-size: 15px;
	--remark-f-size: 12px;
	--btn-f-size: 15px;
	--icn-f-size: 11px;
	--big-f-size: 1.3em;
}

.mainContentMT {
	width: 100%;
}

.rootMT ul {
	overflow: hidden;
	width: 940px !important;
	margin: 0 auto;
	position: relative;
	z-index: 0;
}


tr,
th,
td,
div,
span,
a,
p {
	color: inherit;
}

/* ai_recommend
---------------------------------------------------- */
#ai_recommend {
	position: relative;
	box-sizing: border-box;
	width: 100%;
	margin: 0 auto;
	padding: 1.5em;
	width: min(100%, 1200px);
	min-height: 292px;
}

#ai_recommend * {
	box-sizing: border-box;
	font-family: "Helvetica Neue", "Helvetica", "Hiragino Sans", "Arial", "Hiragino Kaku Gothic ProN", 'Noto Sans JP', "Hiragino Kaku Gothic Pro", "メイリオ", -apple-system, BlinkMacSystemFont, sans-serif;
	font-feature-settings: "palt";
	letter-spacing: 0.06em;
}

#ai_recommend .pc {
	display: block !important;
}

#ai_recommend .sp {
	display: none !important;
}

/* font
---------------------------------------------------- */

#ai_recommend .title {
	font-size: var(--title-f-size);
	font-weight: 700;
	line-height: 1.5;
}

#ai_recommend .subtitle {
	font-size: var(--sbtitle-f-size);
	font-weight: 700;
	line-height: 1.5;
}

#ai_recommend .text {
	font-size: var(--txt-f-size);
	font-weight: 400;
	line-height: 2;
}

#ai_recommend .remark {
	font-size: var(--remark-f-size);
	font-weight: 400;
	line-height: 2;
}

#ai_recommend .big {
	font-size: var(--big-f-size);
	font-weight: 700;
}

#ai_recommend .txt_center {
	text-align: center;
}

#ai_recommend .txt_left {
	text-align: left;
}

#ai_recommend .txt_right {
	text-align: right;
}



/* .loading-container
---------------------------------------------------- */

.loading-container {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 100%;
	background-color: #fff;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 9999;
	transition: opacity 1s ease-out;
	opacity: 1;
}

.loading {
	display: block;
	width: 2.5em;
	height: 2.5em;
	border-radius: 50%;
	border: solid 0.25em;
	border-color: var(--brand-color) var(--gray-color) var(--gray-color);
	position: relative;
	animation-name: spin;
	animation-duration: 2s;
	animation-iteration-count: infinite;
	animation-timing-function: linear;
}

@keyframes spin {
	to {
		transform: rotate(360deg);
	}
}

/* #ai_recommend_head
---------------------------------------------------- */

#ai_recommend_head {
	margin: 0 0 1em;
	position: relative;
}

#ai_recommend_head .head_txt_all {
	display: inline-block;
	position: relative;
}

/* #ai_recommend_contents
---------------------------------------------------- */

#ai_recommend_contents ul {
	display: grid;
	gap: 1.5em;
	grid-template-columns: repeat(5, 1fr);
}

#ai_recommend_contents .ai_recommend_contents {
	border-radius: 0.75em;
	background: var(--gray-color);
	overflow: hidden;
}


@media screen and (max-width: 1000px) {

	#ai_recommend_contents ul {
		gap: 1em;
		grid-template-columns: repeat(4, 1fr);
	}
}

@media screen and (max-width: 768px) {

	#ai_recommend_contents ul {
		gap: 0.6em;
		grid-template-columns: repeat(3, 1fr);
	}

}

@media screen and (max-width: 480px) {

	#ai_recommend_contents ul {
		grid-template-columns: repeat(2, 1fr);
	}

}

#ai_recommend .ai_recommend_contents a {
	width: 100%;
	margin: 0 auto;
	display: block;
	text-decoration: none;
}

#ai_recommend .ai_recommend_contents a img {
	width: 100%;
	transition: all ease .2s;
}

#ai_recommend .ai_recommend_contents a>img:hover {
	opacity: .7;
}

#ai_recommend .ai_recommend_contents .txt_all {
	padding: 1em;
	line-height: 1.2;
}

#ai_recommend .ai_recommend_contents .menu {
	font-weight: 700;
	margin: 1em auto;
	font-size: var(--remark-f-size);
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	line-clamp: 2;
	-webkit-line-clamp: 2;
	min-height: 2lh;
}

#ai_recommend .ai_recommend_contents .price {
	font-size: var(--remark-f-size);
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	line-clamp: 3;
	-webkit-line-clamp: 3;
	min-height: 2lh;
}

#ai_recommend .ai_recommend_contents .price .after {
	color: #F10039;
}

#ai_recommend .ai_recommend_contents .icn {
	display: flex;
	align-items: center;
	gap: 0.2em;
	width: fit-content;
	height: calc(1lh + 1em);
	padding: 0 1em;
	border-radius: 2em;
	color: #fff;
	font-size: var(--icn-f-size);
	text-align: center;
}

#ai_recommend .ai_recommend_contents .icn_img {
	font-size: 1em;
	width: 1.2em;
	height: 1.2em;
	margin: 0 0 0.2em;
}

#ai_recommend .ai_recommend_contents .icn_txt {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	line-clamp: 1;
	-webkit-line-clamp: 1;
	padding: 0.1em 0 0;
	color: #fff;
	overflow: hidden;
	font-size: var(--icn-f-size);
}

#ai_recommend_contents .area_title {
	font-size: var(--remark-f-size);
}

#ai_recommend_contents .area {
	font-size: var(--remark-f-size);
}


/* #other_service_btn
---------------------------------------------------- */

#other_service_btn {
	padding: 2.5% 0;
	background: #fff;
}

#other_service_btn .other_service_btn a {
	display: block;
	width: min(90%, 400px);
	background: var(--bk-gradation);
	text-align: center;
	margin: 0 auto;
	text-decoration: none;
	border-radius: 2em;
}

#other_service_btn .other_service_btn a p {
	font-size: var(--btn-f-size);
	font-weight: 700;
	color: #fff;
	padding: 1.2em 0;
	line-height: 1;
}

@media screen and (max-width: 767px) {


	:root {
		--title-f-size: 20px;
		--txt-f-size: 13px;
		--remark-f-size: 13px;
		--btn-f-size: 13px;
	}

	#ai_recommend {
		padding: 0.6em;
	}

	#ai_recommend .sp {
		display: block !important;
	}

	#ai_recommend .pc {
		display: none !important;
	}

	#fftop_recomDetail section {
		padding: inherit;
		margin: inherit;
	}

	#fftop_recomDetail #ai_recommend #ai_recommend_head,
	#fftop_recomDetail #ai_recommend_contents {
		padding: 0;
	}

	#fftop_recomDetail #ai_recommend #ai_recommend_head {
		margin: 0 0 1em;
	}

	#ai_recommend_contents .ai_recommend_contents {
		border-radius: 0.5em;
	}

	#ai_recommend .ai_recommend_contents .txt_all {
		padding: 0.75em;
	}

	#ai_recommend .ai_recommend_contents .txt_all p {
		line-height: 1.2;
	}

	#fftop_recomDetail #other_service_btn {
		padding: 5% 0;
	}

	#ai_recommend .ai_recommend_contents .area_title {
		margin: 0;
	}

	#ai_recommend .ai_recommend_contents .area {
		overflow: hidden;
		display: -webkit-box;
		-webkit-box-orient: vertical;
		line-clamp: 2;
		-webkit-line-clamp: 2;
	}

}
