@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+SC:wght@500&display=swap');

/* ------------------------------
 PC用限定CSS
------------------------------ */
@media print, screen and (min-width: 768px) {
	.lh-1 h2 {
		line-height: 1;
	}
}
/* ------------------------------
 メインタイトル
------------------------------ */
.cms_block.mainimgBlock {
	width: 100%;
	padding-top: 130px;
	background: linear-gradient(to bottom, #f7f7f8 0%, #ffffff 100%);
	position: relative;
}
.mainimgBlock h1 {
	font-family: 'Noto Serif SC', serif;
	font-size: 5.8rem;
	font-weight: 500;
	line-height: .9;
	text-align: center;
	color: #000;
	display: inline-block;
}
.mainimgBlock .page-title span {
	font-family: 'Noto Sans SC', sans-serif;
	font-size: 2.7rem;
	font-weight: 100;
	line-height: 1.4;
	color: #48217A;
	text-align: center;
	width: 300px;
	display: inline-block;
	padding: 8px;
	border: solid 1px #48217A;
	margin-left: 20px;
}
.icon-new {
	font-size: 1.7rem;
	line-height: 28px;
	text-align: center;
	color: #fff;
	width: 90px;
	display: inline-block;
	margin-right: 15px;
	background: #E50000;
}
.icon-big a {
	vertical-align: middle;
}
.cms_link.icon-big a::after {
	font-size: 120%;
}
/* ------------------------------
 PC用限定CSS
------------------------------ */
@media print, screen and (min-width: 768px) {
	.mainimgBlock .page-title {
		display: flex;
		justify-content: center;
		align-items: flex-start;
	}
}
/* ------------------------------
 スマホ用コード
------------------------------ */
@media screen and (max-width: 767px) {
	.cms_block.mainimgBlock {
		margin-left: 0;
		margin-right: 0;
		padding-top: 40px;
	}
	.cms_block.mainimgBlock > *:not(.cms_image) {
		padding-left: 5%;
		padding-right: 5%;
	}
	.mainimgBlock .page-title {
		text-align: center;
	}
	.mainimgBlock h1 {
		font-size: 3.6rem;
		margin-bottom: 15px;
	}
	.mainimgBlock .page-title span {
		font-size: 1.6rem;
		width: 260px;
		margin-left: 0;
	}
	.icon-new {
		font-size: 1.2rem;
		line-height: 22px;
		width: 60px;
		margin-right: 5px;
	}
}
/* ------------------------------
 見出し
------------------------------ */
h2 {
	font-family: 'Noto Serif SC', serif;
	font-size: 6.3rem;
	font-weight: 500;
	line-height: 1.3;
	color: #000;
	margin-bottom: 50px;
	border-bottom: none;
	padding-bottom: 0;
	position: relative;
}
h3 {
	font-family: 'Noto Sans SC', sans-serif;
	font-size: 3rem;
	font-weight: 400;
	line-height: 1.3;
	margin-bottom: 10px;
}
.title-tac h2,
.title-tac h3 {
	text-align: center;
}
.thin-title {
	font-family: 'Noto Sans SC', sans-serif;
	font-size: 3.9rem;
	font-weight: 100;
	color: #48217A;
}
/* ------------------------------
 スマホ用コード
------------------------------ */
@media screen and (max-width: 767px) {
	h2 {
		font-size: 3.2rem;
		margin-bottom: 20px;
	}
	h3 {
		font-size: 2.4rem;
	}
	.thin-title {
		font-size: 2rem;
	}
}
/* ------------------------------
 背景円状グラデ
------------------------------ */
.radialBlock {
	padding: 110px 0;
	background: radial-gradient(#fefeff, #e6ecf2);
}
.radialBlock h2 {
	text-align: center;
}
/* ------------------------------
 スマホ用コード
------------------------------ */
@media screen and (max-width: 767px) {
	.cms_block.radialBlock {
		margin-left: 0;
		margin-right: 0;
	}
	.radialBlock {
		padding: 50px 5%;
	}
}
/* ------------------------------
 背景ブロック
------------------------------ */
.bkBlock {
	padding: 30px 0;
	position: relative;
	background: url(/yamahafinetech/shared/img/lp/mp_bg_img01.jpg) no-repeat center center / cover;
}
/* ------------------------------
 PC用限定CSS
------------------------------ */
@media print, screen and (min-width: 768px) {
	.bkBlock {
		height: 900px;
		display: flex;
		align-items: center;
		justify-content: center;
	}
	.cms_block.bkBlock > * {
		margin-left: 0;
		margin-right: 0;
	}
}
/* ------------------------------
 スマホ用コード
------------------------------ */
@media screen and (max-width: 767px) {
	.cms_block.bkBlock {
		margin-left: 0;
		margin-right: 0;
	}
	.bkBlock {
		padding: 65% 5% 50px;
		background: #EFF0F2 url(../img/lp/mp_bg_img01_sp.jpg) no-repeat center top / 100% auto;
	}
}

/* ------------------------------
 流れ
------------------------------ */
.flowBox > div {
	text-align: center;
	position: relative;
}
.flowBox > div:not(:last-child)::after {
	content: "";
	width: 25px;
	height: 25px;
	border-right: solid 1px #48217A;
	border-bottom: solid 1px #48217A;
	position: absolute;
}
/* ------------------------------
 PC用限定CSS
------------------------------ */
@media print, screen and (min-width: 768px) {
	.flowBox > div {
		width: 200px;
	}
	.flowBox > div:not(:last-child)::after {
		transform: rotate(-45deg);
		top: 85px;
		left: calc(100% - 13px);
	}
}
/* ------------------------------
 スマホ用コード
------------------------------ */
@media screen and (max-width: 767px) {
	.flowBox > div:not(:last-child) {
		margin-bottom: 30px;
	}
	.flowBox > div:not(:last-child)::after {
		transform: rotate(45deg);
		top: calc(100% -20px);
		left: 0;
		right: 0;
		margin: auto;
	}
}
/* ------------------------------
 背景ブロック内
------------------------------ */
.colorBg.pdWide {
	padding: 60px 140px;
}
/* ------------------------------
 スマホ用コード
------------------------------ */
@media screen and (max-width: 767px) {
	.colorBg.pdWide {
		padding: 40px 25px;
	}
}<!--0.00016498565673828-->