body {
	color: #121212;
	font-family: "Hiragino Sans", "Noto Sans JP", "Noto Sans CJK JP", "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", Meiryo, "MS PGothic", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}

a {
	color: inherit;
	cursor: pointer;
	text-decoration: none;
	transition: 0.3s;
}

a:hover {
	opacity: 0.7;
}

img {
	display: block;
	width: 100%;
}

.only-sp {
	display: none;
}

.only-pc {
	display: block;
}

.only-pc-inline-block {
	display: inline-block;
}

.section__title {
	text-align: center;
}

.section__title_left {
	text-align: left;
}

.section__title_left .section__title_ja::before {
	left: 0;
	transform: none;
}

.section__title_left .section__title_ja::after {
	left: 0;
	transform: none;
}

.section__title_en {
	color: #BE0023;
	font-size: min(1.3888888889vw, 20px);
	font-weight: 600;
	line-height: 150%;
}

.section__title_ja {
	display: inline-block;
	font-size: min(2.2222222222vw, 32px);
	font-weight: 700;
	line-height: 150%;
	margin-top: min(0.4166666667vw, 6px);
	padding-bottom: min(0.4861111111vw, 7px);
	position: relative;
}

.section__title_ja::before {
	background-color: #BE0023;
	bottom: 0;
	content: "";
	height: min(0.1388888889vw, 2px);
	left: 50%;
	position: absolute;
	transform: translateX(-50%);
	width: min(2.7777777778vw, 40px);
}

.section__title_ja::after {
	background-color: #121212;
	bottom: 0;
	content: "";
	height: min(0.1388888889vw, 2px);
	left: 50%;
	position: absolute;
	transform: translateX(-100%);
	width: min(1.3888888889vw, 20px);
}

.section__title_ja span {
	color: #BE0023;
}

.number {
	font-family: "Avenir", "Lato", "Helvetica Neue";
}

header {
	background-color: #FFFFFF;
	box-shadow: 0 min(0.2777777778vw, 4px) min(0.9722222222vw, 14px) 0 rgba(0, 0, 0, 0.1);
	left: 0;
	padding: min(1.25vw, 18px) min(4.5138888889vw, 65px) min(1.25vw, 18px) min(2.1527777778vw, 31px);
	position: relative;
	position: fixed;
	top: 0;
	width: 100%;
	z-index: 5;
}

.header__inner {
	align-items: center;
	display: flex;
	justify-content: space-between;
}

.header__logo {
	width: min(9.9305555556vw, 143px);
}

.header__right {
	align-items: center;
	display: flex;
}

.header__menu {
	align-items: center;
	display: flex;
	gap: min(2.5vw, 36px);
}

.header__link a {
	font-size: min(1.1111111111vw, 16px);
	font-weight: 600;
	line-height: 140%;
}

/* --- details / summary --- */

.header__accordion {
	position: relative; /* 絶対配置の基準 */
}

.header__accordion-title {
	cursor: pointer;
	display: inline-block;
	font-size: min(1.1111111111vw, 16px);
	font-weight: bold; /* Firefox など */
	font-weight: 600;
	line-height: 140%;
	list-style: none;
	outline: none;
	padding-right: min(1.1111111111vw, 16px);
	position: relative;
}

/* デフォルトの三角を消す（Chrome/Safari） */

.header__accordion-title::-webkit-details-marker {
	display: none;
}

/* カスタム矢印 */

.header__accordion-title::after {
	background: url(../img/header_link_vector.png) no-repeat center center/contain;
	content: "";
	height: min(0.4166666667vw, 6px);
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	transition: transform 0.2s ease-in-out;
	width: min(0.625vw, 9px);
}

/* 開いた時に矢印回転 */

.header__accordion[open] > .header__accordion-title::after {
	transform: translateY(-50%) rotate(180deg);
}

/* --- ドロップダウン本体 --- */

.header__accordion-content {
	background: #fff;
	border-radius: min(0.5555555556vw, 8px);
	box-shadow: 0 min(0.5555555556vw, 8px) min(1.6666666667vw, 24px) rgba(0, 0, 0, 0.08);
	display: none; /* summary の直下に表示 */
	left: 0; /* 初期は非表示 */
	min-width: min(6.9444444444vw, 100px);
	position: absolute;
	top: 100%;
	z-index: 2;
}

/* details が open のときだけ表示 */

.header__accordion[open] > .header__accordion-content {
	display: block;
}

/* ドロップダウン内リンク */

.header__accordion-link {
	color: #111;
	display: block;
	font-size: min(1.1111111111vw, 16px); /* 折り返しを避けたい場合 */
	font-weight: 600;
	line-height: 120%;
	line-height: 140%;
	padding: min(0.6944444444vw, 10px) min(0.9722222222vw, 14px);
	text-decoration: none;
	white-space: nowrap;
}

.header__btn {
	border-radius: min(0.3472222222vw, 5px);
	color: #FFFFFF;
	display: inline-block;
	font-size: min(1.1111111111vw, 16px);
	font-weight: 600;
	line-height: 140%;
	padding: min(0.7638888889vw, 11px) min(1.7708333333vw, 25.5px);
}

.header__download {
	background-color: #121212;
	margin-left: min(2.9166666667vw, 42px);
}

.header__consulting {
	background-color: #BE0023;
	margin-left: min(0.625vw, 9px);
}

.header__login {
	display: inline-block;
	font-size: min(1.1111111111vw, 16px);
	font-weight: 600;
	line-height: 140%;
	margin-left: min(1.3888888889vw, 20px);
}

.fv {
	background: url(../img/fv_bg.png) no-repeat center center/cover;
	padding-bottom: min(1.8354166667vw, 26.43px);
	padding-top: min(7.1527777778vw, 103px);
}

.fv__flex {
	display: flex;
	margin: 0 auto;
	width: min(88.5416666667vw, 1275px);
}

.fv__left {
	width: min(48.4722222222vw, 698px);
}

.fv__text {
	display: inline-block;
	font-size: min(2.0895833333vw, 30.09px);
	font-style: italic;
	font-weight: 700;
	line-height: 140%;
	position: relative;
	transform: rotate(-3.75deg);
}

.fv__text span {
	color: #BE0023;
	font-style: italic;
	font-weight: 700;
}

.fv__text::after {
	background-color: #121212;
	bottom: min(0.6944444444vw, 10px);
	content: "";
	height: min(0.2319444444vw, 3.34px);
	left: 0;
	position: absolute;
	width: 100%;
}

.fv__text-number {
	font-size: min(3.8305555556vw, 55.16px);
	line-height: 140%;
}

.fv__title {
	font-size: min(3.1944444444vw, 46px);
	font-weight: 700;
	line-height: 140%;
	margin-top: min(1.3888888889vw, 20px);
}

.fv__title span {
	font-size: min(3.8888888889vw, 56px);
	line-height: 140%;
}

.fv__title-dot {
	background-image: radial-gradient(circle at center, #121212 20%, transparent 20%);
	background-position: top right;
	background-repeat: repeat-x;
	background-size: 1em 0.3em;
	padding-top: 0.3em;
}

.fv__logo-container {
	width: min(calc(375 / 1440 * 100vw),375px);
	margin-top: min(calc(16 / 1440 * 100vw),16px);
	box-sizing: border-box;
	background: #ffffff;
	border-radius: min(calc(6 / 1440 * 100vw),6px);
	padding: min(calc(34 / 1440 * 100vw),34px) min(calc(30 / 1440 * 100vw),30px) min(calc(21 / 1440 * 100vw),21px) min(calc(32 / 1440 * 100vw),32px);
}

.fv__logo-container img {
	display: block;
	width: 100%;
}

.fv__logo-top {
	align-items: center;
	display: flex;
	gap: min(0.7298611111vw, 10.51px);
	justify-content: center;
	padding: min(0.3472222222vw, 5px) min(1.4583333333vw, 21px);
}

.fv__logo-top-text {
	font-family: "Helvetica", "Helvetica Neue", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "Noto Sans JP", "Noto Sans CJK JP", Meiryo, "MS PGothic", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
	font-size: min(1.0222222222vw, 14.72px);
	font-weight: 700;
	line-height: 140%;
}

.fv__logo-top-adyell {
	width: min(8.0840277778vw, 116.41px);
}

.fv__logo-under {
	align-items: center;
	display: flex;
	gap: min(2.04375vw, 29.43px);
	justify-content: center;
	margin-top: min(1.1277777778vw, 16.24px);
	padding: min(0.3979166667vw, 5.73px) min(0.9798611111vw, 14.11px) min(0.325vw, 4.68px);
	position: relative;
}

.fv__logo-under::before {
	background-color: #D9D9D9;
	content: "";
	height: min(0.0368055556vw, 0.53px);
	left: 50%;
	position: absolute;
	top: max(-0.3652777778vw, -5.26px);
	transform: translateX(-50%);
	width: min(26.6826388889vw, 384.23px);
}

.fv__logo-under::after {
	border-left: min(0.0368055556vw, 0.53px) dotted #ABABAB;
	content: "";
	content: "";
	height: min(2.4819444444vw, 35.74px);
	left: min(15.7638888889vw, 227px);
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: min(0.0368055556vw, 0.53px);
}

.fv__logo-under-left {
	align-items: center;
	display: flex;
	gap: min(0.2916666667vw, 4.2px);
}

.fv__logo-under-left-title {
	background-color: #EEEEEE;
	font-size: min(0.7298611111vw, 10.51px);
	font-weight: 700;
	line-height: 140%;
	padding: min(0.4743055556vw, 6.83px) min(0.6277777778vw, 9.04px) min(0.2895833333vw, 4.17px) min(0.6201388889vw, 8.93px);
	text-align: center;
}

.fv__logo-under-left-logo {
	width: min(6.4104166667vw, 92.31px);
}

.fv__logo-under-right {
	align-items: center;
	align-items: center;
	display: flex;
	gap: min(0.2916666667vw, 4.2px);
}

.fv__logo-under-right-title {
	background-color: #EEEEEE;
	font-size: min(0.7298611111vw, 10.51px);
	font-weight: 700;
	line-height: 140%;
	padding: min(0.5111111111vw, 7.36px) min(0.9180555556vw, 13.22px) min(0.4916666667vw, 7.08px) min(1.0583333333vw, 15.24px);
	text-align: center;
}

.fv__logo-under-right-logo {
	width: min(6.3763888889vw, 91.82px);
}

.fv__pattern {
	margin-top: min(1.7201388889vw, 24.77px);
	width: min(40.8819444444vw, 588.7px);
}

.fv__pattern-title {
	align-items: center;
	background-color: #121212;
	border-radius: min(0.625vw, 9px) min(0.625vw, 9px) 0 0;
	color: #FFFFFF;
	display: flex;
	font-size: min(1.0222222222vw, 14.72px);
	gap: min(0.4381944444vw, 6.31px);
	justify-content: center;
	padding: min(0.7722222222vw, 11.12px) 0 min(0.6201388889vw, 8.93px);
}

.fv__pattern-title span {
	font-size: min(1.4604166667vw, 21.03px);
	font-weight: 600;
	line-height: min(1.4861111111vw, 21.4px);
}

.fv__pattern-content {
	background-color: #FFFFFF;
	border-radius: 0 0 min(0.625vw, 9px) min(0.625vw, 9px);
	padding: min(1.3138888889vw, 18.92px) min(2.6vw, 37.44px) min(0.9923611111vw, 14.29px);
}

.fv__pattern-item {
	align-items: center;
	display: flex;
	gap: min(0.8756944444vw, 12.61px);
}

.fv__pattern-item:not(:first-child) {
	margin-top: min(0.6569444444vw, 9.46px);
}

.fv__pattern-item-title {
	border: min(0.0729166667vw, 1.05px) solid #121212;
	border-radius: min(0.3652777778vw, 5.26px);
	font-size: min(1.4159722222vw, 20.39px);
	font-weight: 600;
	line-height: min(1.7013888889vw, 24.5px);
	padding: min(0.4534722222vw, 6.53px) min(0.7944444444vw, 11.44px);
}

.fv__pattern-item-right {
	align-items: center;
	display: flex;
	gap: min(0.2923611111vw, 4.21px);
}

.fv__pattern-item-right-text {
	background-color: #EEEEEE;
	border-radius: min(0.3652777778vw, 5.26px);
	font-size: min(1.0222222222vw, 14.72px);
	font-weight: 600;
	line-height: min(1.7013888889vw, 24.5px);
	padding: min(0.4458333333vw, 6.42px) min(0.8756944444vw, 12.61px);
}

.fv__pattern-item-right-text span {
	font-size: min(1.4604166667vw, 21.03px);
	font-weight: 600;
	line-height: min(1.7013888889vw, 24.5px);
}

.fv__pattern-item-right-text-2 {
	padding: min(0.4458333333vw, 6.42px) min(5.8402777778vw, 84.1px);
}

.fv__right {
	width: min(34.7222222222vw, 500px);
}

.fv__right-pc {
	transform: scale(1.4) translateY(min(5.5555555556vw, 80px));
}

.fv__right-flex {
	align-items: center;
	display: flex;
	gap: min(0.9027777778vw, 13px);
	justify-content: center;
	margin-top: min(4.1666666667vw, 60px);
}

.fv__right-item {
	align-items: center;
	backdrop-filter: blur(min(0.3715277778vw, 5.35px));
	background-color: rgba(255, 255, 255, 0.88);
	border-radius: 50%;
	box-shadow: 0 min(0.2479166667vw, 3.57px) min(0.6194444444vw, 8.92px) rgba(0, 0, 0, 0.1);
	display: flex;
	height: min(9.2958333333vw, 133.86px);
	justify-content: center;
	width: min(9.2958333333vw, 133.86px);
}

.fv__right-item-text {
	color: #3D3D3D;
	font-size: min(0.9916666667vw, 14.28px);
	font-weight: 700;
	line-height: 150%;
	text-align: center;
}

.fv__right-item-text-2 {
	color: #3D3D3D;
	font-size: min(1.2395833333vw, 17.85px);
	font-weight: 700;
	line-height: 140%;
	text-align: center;
}

.fv__right-item-text-span {
	color: #BE0023;
	font-size: min(1.7361111111vw, 25px);
	font-weight: 700;
	line-height: 120%;
}

.fv__right-item-text-span-2 {
	color: #BE0023;
	font-size: min(1.2395833333vw, 17.85px);
	font-weight: 700;
	line-height: 140%;
}

.fv__right-item-text-span-3 {
	color: #BE0023;
	font-size: min(2.3548611111vw, 33.91px);
	font-weight: 700;
	line-height: 100%;
}

.fv__right-item-text-span-4 {
	color: #BE0023;
	font-size: min(calc(20 / 1440 * 100vw),20px);
	font-weight: 700;
	line-height: 120%;
}

.fv__link-container {
	align-items: center;
	display: flex;
	gap: min(0.7298611111vw, 10.51px);
	justify-content: center;
	margin-top: min(2.0263888889vw, 29.18px);
}

.fv__link {
	border-radius: min(5.8402777778vw, 84.1px);
	box-shadow: 0 min(0.4381944444vw, 6.31px) 0 rgba(0, 0, 0, 0.2);
	font-size: min(1.4604166667vw, 21.03px);
	font-weight: 600;
	padding: min(1.5277777778vw, 22px) min(5.1111111111vw, 73.6px);
}

.fv__link:first-child {
	background-color: #121212;
	color: #FFFFFF;
}

.fv__link:nth-child(2) {
	background-color: #FFFFFF;
	color: #121212;
}

.fv__link-sp-text {
	color: #FFFFFF;
	font-size: 3.5623409669vw;
	font-weight: 600;
	line-height: 140%;
}

.achievements {
	margin-top: min(7.6388888889vw, 110px);
}

.achievements__inner {
	margin: 0 auto;
	width: min(61.875vw, 891px);
}

.achievements__top {
	background-color: #F7F7F7;
	border-radius: min(1.0416666667vw, 15px);
	font-size: min(1.6666666667vw, 24px);
	font-weight: 700;
	line-height: 150%;
	padding: min(2.2222222222vw, 32px) 0 min(1.25vw, 18px);
	position: relative;
	text-align: center;
}

.achievements__top span {
	color: #BE0023;
}

.achievements__top::after {
	background: url(../img/achievements_top.png) no-repeat center center/contain;
	content: "";
	height: min(4.1666666667vw, 60px);
	left: 50%;
	position: absolute;
	top: max(-2.0138888889vw, -29px);
	transform: translateX(-50%);
	width: min(4.1666666667vw, 60px);
}

.achievements__flex {
	align-items: center;
	display: flex;
	justify-content: space-between;
	margin-top: min(2.2222222222vw, 32px);
}

.achievements__item {
	background-color: #F7F7F7;
	border-radius: min(1.0416666667vw, 15px);
	padding: 0 min(1.9791666667vw, 28.5px);
}

.achievements__item:first-child {
	width: min(28.6111111111vw, 412px);
}

.achievements__item:nth-child(2) {
	width: min(31.875vw, 459px);
}

.achievements__title {
	background-color: #121212;
	border-radius: min(0.3472222222vw, 5px);
	color: #FFFFFF;
	font-size: min(1.6666666667vw, 24px);
	font-weight: 600;
	letter-spacing: min(0.4166666667vw, 6px);
	line-height: 150%;
	margin-top: min(1.25vw, 18px);
	padding: min(0.5555555556vw, 8px) 0;
	text-align: center;
}

.achievements__flex-flex {
	display: flex;
}

.achievements__item-logo {
	margin-left: min(2.8819444444vw, 41.5px);
	margin-top: min(1.8055555556vw, 26px);
	width: min(5.625vw, 81px);
}

.achievements__item-logo-2 {
	margin-left: min(2.0486111111vw, 29.5px);
	margin-top: min(2.6388888889vw, 38px);
	width: min(3.9583333333vw, 57px);
}

.achievements__item-text {
	font-size: min(2.5vw, 36px);
	font-weight: 700;
	letter-spacing: min(0.0694444444vw, 1px);
	line-height: 150%;
}

.achievements__item-text span {
	color: #BE0023;
	font-family: "Akshar", sans-serif;
	font-size: min(5.8333333333vw, 84px);
	font-weight: 500;
	letter-spacing: min(0.0694444444vw, 1px);
	line-height: 150%;
}

.achievements__caution {
	font-size: min(0.9722222222vw, 14px);
	font-weight: 400;
	line-height: 150%;
	margin-top: min(2.2222222222vw, 32px);
	text-align: center;
}

.about {
	background-color: #F7F7F7;
	border-radius: min(1.0416666667vw, 15px);
	margin: min(10.3472222222vw, 149px) auto 0;
	padding: min(3.8194444444vw, 55px) 0 min(5.2777777778vw, 76px);
	position: relative;
	width: min(86.1111111111vw, 1240px);
}

.about::after {
	background: url(../img/about_top.png) no-repeat center center/contain;
	content: "";
	height: min(6.0340277778vw, 86.89px);
	left: 50%;
	position: absolute;
	top: max(-2.9861111111vw, -43px);
	transform: translateX(-50%);
	width: min(5.45625vw, 78.57px);
}

.about::before {
	background: url(../img/about_accent.png) no-repeat center center/contain;
	content: "";
	height: min(15.3472222222vw, 221px);
	position: absolute;
	right: min(2.9166666667vw, 42px);
	top: max(-2.4305555556vw, -35px);
	width: min(15.3472222222vw, 221px);
}

.about__title {
	font-size: min(1.9444444444vw, 28px);
	font-weight: 700;
	line-height: 150%;
	text-align: center;
}

.about__title span {
	color: #BE0023;
	font-size: min(2.6388888889vw, 38px);
	line-height: 150%;
}

.about__content {
	margin: min(2.2222222222vw, 32px) auto 0;
	width: min(63.8888888889vw, 920px);
}

.about__text {
	font-size: min(1.1111111111vw, 16px);
	font-weight: 500;
	line-height: 150%;
	margin-top: min(2.2222222222vw, 32px);
	text-align: center;
}

.problem {
	margin-top: min(7.6388888889vw, 110px);
}

.problem__flex {
	align-items: center;
	display: flex;
	gap: min(2.0833333333vw, 30px);
	justify-content: center;
	margin-top: min(6.3888888889vw, 92px);
}

.problem__item {
	background-color: #F7F7F7;
	border-radius: min(1.0416666667vw, 15px);
	height: min(20.625vw, 297px);
	padding-top: min(4.4444444444vw, 64px);
	position: relative;
	width: min(25vw, 360px);
}

.problem__item::after {
	background: url(../img/problem_fukidashi.png) no-repeat center center/contain;
	content: "";
	height: min(5.7638888889vw, 83px);
	left: 50%;
	position: absolute;
	top: max(-2.3611111111vw, -34px);
	transform: translateX(-50%);
	width: min(22.8472222222vw, 329px);
}

.problem__fukidashi {
	color: #FFFFFF;
	font-size: min(1.25vw, 18px);
	font-weight: 600;
	left: 50%;
	line-height: 150%;
	position: absolute;
	top: max(-0.8333333333vw, -12px);
	transform: translateX(-50%);
	white-space: nowrap;
	z-index: 2;
}

.problem__title {
	font-size: min(1.6666666667vw, 24px);
	font-weight: 700;
	line-height: 150%;
	text-align: center;
}

.problem__img {
	margin: min(1.0416666667vw, 15px) auto 0;
	width: min(12.9861111111vw, 187px);
}

.problem__img-2 {
	margin: min(0.1388888889vw, 2px) auto 0;
	width: min(11.0416666667vw, 159px);
}

.problem__fukidashi-3 {
	text-align: center;
	top: max(-1.8055555556vw, -26px);
}

.problem__img-3 {
	margin: 0 auto;
	width: min(12.0833333333vw, 174px);
}

.features {
	background-color: #BE0023;
	border-radius: min(2.7777777778vw, 40px);
	margin: min(7.6388888889vw, 110px) auto 0;
	padding: min(6.3888888889vw, 92px) 0 min(7.4305555556vw, 107px);
	position: relative;
}

.features::after {
	background: url(../img/features_accent.png) no-repeat center center/contain;
	content: "";
	height: min(14.0277777778vw, 202px);
	left: 50%;
	position: absolute;
	top: min(4.0972222222vw, 59px);
	transform: translateX(calc(-50% - min(33.3333333333vw, 480px)));
	width: min(14.0972222222vw, 203px);
}

.features::before {
	background: url(../img/FEATURES.png) no-repeat center center/contain;
	bottom: min(17.8472222222vw, 257px);
	content: "";
	height: min(39.7222222222vw, 572px);
	mix-blend-mode: color;
	position: absolute;
	right: 0;
	width: min(12.0833333333vw, 174px);
}

.features .section__title_en {
	color: #FFFFFF;
}

.features .section__title_ja {
	color: #FFFFFF;
}

.features .section__title_ja::before {
	background-color: #FFFFFF;
}

.features .section__title_ja::after {
	display: none;
}

.features__list {
	margin: min(4.375vw, 63px) auto 0;
	width: min(79.1666666667vw, 1140px);
}

.features__item {
	align-items: center;
	background-color: #FFFFFF;
	border-radius: min(1.0416666667vw, 15px);
	display: flex;
	gap: min(2.1527777778vw, 31px);
	padding: min(2.7777777778vw, 40px) min(4.1666666667vw, 60px);
}

.features__item:not(:first-child) {
	margin-top: min(2.2222222222vw, 32px);
}

.features__item:nth-child(2n) {
	flex-direction: row-reverse;
}

.features__content {
	width: min(38.8888888889vw, 560px);
}

.features__number {
	color: #BE0023;
	font-size: min(3.6111111111vw, 52px);
	font-weight: 700;
	line-height: 90%;
}

.features__title {
	font-size: min(2.5vw, 36px);
	font-weight: 700;
	line-height: 150%;
	margin-top: min(0.6944444444vw, 10px);
}

.features__text {
	font-size: min(1.1111111111vw, 16px);
	line-height: 150%;
	margin-top: min(0.6944444444vw, 10px);
	white-space: nowrap;
}

.features__text span {
	color: #BE0023;
	font-weight: 700;
}

.features__img {
	width: min(29.7916666667vw, 429px);
}

.cta {
	background: url(../img/cta_bg.png) no-repeat center center/cover;
	border-radius: min(1.3888888889vw, 20px);
	margin: min(7.6388888889vw, 110px) auto 0;
	padding: min(6.5972222222vw, 95px) 0;
	width: min(93.0555555556vw, 1340px);
}

.cta__flex {
	align-items: center;
	display: flex;
	gap: min(3.8194444444vw, 55px);
	justify-content: center;
}

.cta__title {
	color: #FFFFFF;
	font-size: min(2.9166666667vw, 42px);
	font-style: italic;
	font-weight: 700;
	line-height: 140%;
	position: relative;
	transform: translateY(max(-0.6944444444vw, -10px)) rotate(-3.75deg);
}

.cta__title span {
	font-size: min(3.6111111111vw, 52px);
	font-weight: 700;
	line-height: 140%;
}

.cta__title .cta__title-span-2 {
	font-size: min(4.3055555556vw, 62px);
	font-weight: 700;
	line-height: 140%;
}

.cta__title::after {
	background-color: #FFFFFF;
	bottom: max(-0.2083333333vw, -3px);
	content: "";
	height: min(0.2083333333vw, 3px);
	left: 50%;
	position: absolute;
	transform: translateX(-50%);
	width: 100%;
}

.cta__right {
	align-items: center;
	display: flex;
	gap: min(0.7638888889vw, 11px);
	text-align: center;
}

.cta__item-text {
	color: #FFFFFF;
	font-size: min(1.25vw, 18px);
	font-weight: 600;
	position: relative;
}

.cta__item-text span {
	font-size: min(1.6666666667vw, 24px);
}

.cta__item-text::after {
	background: url(../img/cta_text_under.png) no-repeat center center/contain;
	bottom: max(-1.1458333333vw, -16.5px);
	content: "";
	height: min(0.3819444444vw, 5.5px);
	left: 50%;
	position: absolute;
	transform: translateX(-50%);
	width: min(10.2083333333vw, 147px);
}

.cta__link {
	background-color: #FFFFFF;
	border-radius: min(6.9444444444vw, 100px);
	display: inline-block;
	font-size: min(1.3888888889vw, 20px);
	font-weight: 700;
	line-height: 150%;
	margin-top: min(1.9097222222vw, 27.5px);
	padding: min(2.0833333333vw, 30px) min(6.9444444444vw, 100px) min(2.0833333333vw, 30px) min(4.8611111111vw, 70px);
	position: relative;
}

.cta__link::after {
	background: url(../img/cta_link_vector.png) no-repeat center center/contain;
	content: "";
	height: min(2.8472222222vw, 41px);
	position: absolute;
	right: min(3.5416666667vw, 51px);
	top: 50%;
	transform: translateY(-50%);
	transition: 0.3s;
	width: min(2.8472222222vw, 41px);
}

.cta__link:hover {
	opacity: 1;
}

.cta__link:hover::after {
	right: min(3.125vw, 45px);
}

.price {
	margin-top: min(7.6388888889vw, 110px);
}

.price__content {
	background-color: #F7F7F7;
	margin-top: min(6.3194444444vw, 91px);
	padding: min(6.1111111111vw, 88px) 0;
}

.price__item:not(:first-child) {
	margin-top: min(4.5138888889vw, 65px);
}

.price__item-title {
	font-size: min(1.8055555556vw, 26px);
	font-weight: 700;
	line-height: 150%;
	text-align: center;
}

.price__table {
	border-collapse: collapse;
	margin: min(2.0833333333vw, 30px) auto 0;
}

.price__table th,
.price__table td {
	border: min(0.0694444444vw, 1px) solid #BDBDBD;
	vertical-align: middle;
}

.table-pc {
	display: table;
}

.table-sp {
	display: none;
}

.price__table-ht-1 {
	background-color: #121212;
	color: #FFFFFF;
	font-size: min(1.1111111111vw, 16px);
	font-weight: 700;
	height: min(2.9861111111vw, 43px);
	line-height: 150%;
	width: min(9.375vw, 135px);
}

.price__table-ht-2 {
	background-color: #121212;
	color: #FFFFFF;
	font-size: min(1.3888888889vw, 20px);
	font-weight: 700;
	height: min(2.9861111111vw, 43px);
	line-height: 150%;
	width: min(12.8472222222vw, 185px);
}

.price__table-ht-3 {
	background-color: #F7F7F7;
	font-size: min(0.9722222222vw, 14px);
	font-weight: 400;
	line-height: 128%;
}

.price__table-ht-4 {
	background-color: #121212;
	color: #FFFFFF;
	font-size: min(1.3888888889vw, 20px);
	font-weight: 700;
	height: min(2.9861111111vw, 43px);
	line-height: 150%;
	width: min(19.3055555556vw, 278px);
}

.price__table-td-1 {
	background-color: #FFFFFF;
	color: #BE0023;
	font-size: min(calc(30 / 1440 * 100vw),30px);
	font-weight: 700;
	height: min(6.4583333333vw, 93px);
	line-height: 128%;
	text-align: center;
}

.price__table-td-1 span {
	font-size: min(calc(24 / 1440 * 100vw),24px);
}

.price__table-td-2 {
	background-color: #FFFFFF;
	font-size: min(1.0416666667vw, 15px);
	font-weight: 400;
	height: min(6.0416666667vw, 87px);
	line-height: 150%;
	padding: 0 min(1.1111111111vw, 16px);
}

.price__table-td-2 span {
	font-weight: 700;
}

.price__table-td-3 {
	height: min(6.1805555556vw, 89px);
}

.price__table-td-4 {
	height: min(3.8194444444vw, 55px);
}

.price__simulation {
	margin-top: min(5.8333333333vw, 84px);
	padding-bottom: min(4.5138888889vw, 65px);
	position: relative;
}

.price__simulation::before {
	background-color: rgba(255, 0, 47, 0.1);
	bottom: 0;
	content: "";
	height: 71.0116731518%;
	left: 50%;
	position: absolute;
	transform: translateX(-50%);
	width: 100%;
	z-index: 0;
}

.simu-card {
	background: #FFFFFF;
	border-radius: min(1.0416666667vw, 15px);
	box-shadow: 0 min(0.1388888889vw, 2px) min(0.9722222222vw, 14px) rgba(0, 0, 0, 0.1);
	margin: 0 auto;
	overflow: hidden;
	position: relative;
	width: min(56.9444444444vw, 820px);
	z-index: 1;
}

.simu-card__head {
	background: #BE0023;
	color: #FFFFFF;
	font-size: min(1.8055555556vw, 26px);
	font-weight: 700;
	padding: min(1.3888888889vw, 20px) 0;
	text-align: center;
}

.simu-card__body {
	padding: min(1.7361111111vw, 25px) 0;
}

/* ====== Form layout ====== */

.simu-grid {
	display: grid;
	gap: min(1.3888888889vw, 20px) min(2.0833333333vw, 30px);
	grid-template-columns: 1fr 1fr;
	margin: 0 auto;
	width: min(48.1944444444vw, 694px);
}

.simu-field {
	display: flex;
	flex-direction: column;
	gap: min(0.5555555556vw, 8px);
}

.simu-label {
	font-size: min(1.1111111111vw, 16px);
	font-weight: 700;
	line-height: 150%;
}

.simu-input-wrap {
	align-items: center;
	display: flex;
	position: relative;
}

input[type=number] {
	appearance: textfield;
	background: #F5F5F5; /* leave space for unit */
	border: min(0.0694444444vw, 1px) solid var(--border);
	border-radius: min(0.6944444444vw, 10px);
	font-size: min(1.1111111111vw, 16px);
	outline: none;
	padding: min(0.7638888889vw, 11px) min(3.0555555556vw, 44px) min(1.0416666667vw, 15px) min(1.0416666667vw, 15px);
	transition: border-color 0.15s ease, background 0.15s ease;
	width: min(19.7222222222vw, 284px);
}

.simu-unit {
	font-size: min(1.1111111111vw, 16px);
	font-weight: 600;
	left: min(20.2777777778vw, 292px);
	pointer-events: none;
	position: absolute;
}

/* ====== Buttons ====== */

.simu-actions {
	display: flex;
	justify-content: center;
	margin-top: min(2.2222222222vw, 32px);
}

.simu-btn {
	background: #BE0023;
	border: 0;
	border-radius: min(3.4722222222vw, 50px);
	color: #FFFFFF;
	cursor: pointer;
	font-family: "Hiragino Sans", "Noto Sans JP", "Noto Sans CJK JP", "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", Meiryo, "MS PGothic", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
	font-size: min(1.25vw, 18px);
	font-weight: 600;
	padding: min(1.1458333333vw, 16.5px) min(2.7083333333vw, 39px);
	transition: transform 0.04s ease, background 0.15s ease, box-shadow 0.15s ease;
}

.simu-btn:hover {
	opacity: 0.7;
}

.simu-btn:active {
	transform: translateY(1px);
}

.simu-btn--ghost {
	background: #fff;
	border: 1px solid #BE0023;
	color: #BE0023;
}

/* ====== Result view ====== */

.simu-result {
	padding: min(3.125vw, 45px) min(0.5555555556vw, 8px);
	text-align: center;
}

.simu-result__value {
	font-size: min(2.2222222222vw, 32px);
	font-weight: 700;
}

.simu-result__value-span {
	font-size: min(1.5277777778vw, 22px);
	font-weight: 700;
}

/* tiny note under button */

.simu-note {
	color: #6C6C6C;
	font-size: min(0.9722222222vw, 14px);
	margin-top: min(1.3888888889vw, 20px);
	text-align: center;
}

.bg-gray {
	background: url(../img/gray-bg.png) no-repeat center center/cover;
	padding: min(6.9444444444vw, 100px) 0 min(5.9722222222vw, 86px);
}

.compare__content {
	background-color: #FFFFFF;
	border-radius: min(1.0416666667vw, 15px);
	margin: min(2.2222222222vw, 32px) auto 0;
	padding: min(3.8888888889vw, 56px) min(5.1388888889vw, 74px);
	width: min(76.4583333333vw, 1101px);
}

.compare__table {
	border-collapse: collapse;
	font-family: "Noto Sans JP", sans-serif;
}

.compare__table tr th {
	vertical-align: middle;
}

.compare__table tr th:first-child {
	background-color: #F5F5F5;
	width: min(15vw, 216px);
}

.compare__table tr th:nth-child(2) {
	width: min(35.3208333333vw, 508.62px);
}

.compare__table tr th:nth-child(3) {
	width: min(15.7638888889vw, 227px);
}

.compare__table tr td {
	border: min(0.0694444444vw, 1px) solid #FFFFFF;
	font-size: min(1.1111111111vw, 16px);
	height: min(4.5833333333vw, 66px);
	text-align: center;
	vertical-align: middle;
}

.compare__table tr td:nth-child(2) {
	background-color: rgba(255, 0, 47, 0.1);
}

.compare__table tr td:nth-child(3) {
	background-color: #F7F7F7;
}

.compare__th-1 {
	border-radius: min(0.6944444444vw, 10px) min(0.6944444444vw, 10px) 0 0;
	font-size: min(1.325vw, 19.08px);
	font-weight: 700;
	height: min(4.8611111111vw, 70px);
	line-height: 150%;
}

.compare__th-2 {
	background-color: #BE0023;
	border-radius: min(0.6944444444vw, 10px) min(0.6944444444vw, 10px) 0 0;
}

.compare__th-2 img {
	display: block;
	margin: 0 auto;
	width: min(11.8055555556vw, 170px);
}

.compare__th-3 {
	background-color: #747474;
	border-radius: min(0.6944444444vw, 10px) min(0.6944444444vw, 10px) 0 0;
	color: #FFFFFF;
	font-size: min(1.5277777778vw, 22px);
	font-weight: 700;
}

.compare__th-3 span {
	font-size: min(1.0416666667vw, 15px);
	font-weight: 700;
}

.compare__th-4 {
	border: min(0.0694444444vw, 1px) solid #FFFFFF;
	font-size: min(1.1576388889vw, 16.67px);
	font-weight: 700;
	line-height: 150%;
}

.compare__span-red {
	color: #BE0023;
	font-weight: 700;
}

.compare__span-18 {
	font-size: min(1.25vw, 18px) !important;
	line-height: 150%;
}

.compare__span-20 {
	font-size: min(1.3888888889vw, 20px) !important;
	line-height: 150%;
}

.flow {
	margin: min(5.4166666667vw, 78px) auto 0;
	width: min(76.4583333333vw, 1101px);
}

.flow__content {
	background-color: #FFFFFF;
	border-radius: min(1.0416666667vw, 15px);
	margin-top: min(2.2222222222vw, 32px);
	padding: min(2.0486111111vw, 29.5px);
	text-align: center;
}

.flow__title {
	background-color: #BE0023;
	border-radius: min(0.6944444444vw, 10px);
	color: #FFFFFF;
	display: inline-block;
	font-size: min(1.8055555556vw, 26px);
	font-weight: 700;
	line-height: 150%;
	margin: 0 auto;
	padding: min(1.4236111111vw, 20.5px) min(7.2569444444vw, 104.5px);
}

.flow__flex {
	align-items: center;
	display: flex;
	gap: min(1.8055555556vw, 26px);
	margin: min(1.6666666667vw, 24px) auto 0;
	width: min(53.8888888889vw, 776px);
}

.flow__img {
	width: min(11.0416666667vw, 159px);
}

.flow__right {
	width: min(41.0416666667vw, 591px);
}

.flow__item {
	text-align: left;
}

.flow__item:not(:first-child) {
	margin-top: min(calc(36 / 1440 * 100vw),36px);
}

.flow__item-top {
	align-items: center;
	display: flex;
	gap: min(0.5555555556vw, 8px);
}

.flow__item-number {
	align-items: center;
	background-color: #BE0023;
	border-radius: 50%;
	color: #FFFFFF;
	display: flex;
	font-size: min(0.9722222222vw, 14px);
	font-weight: 700;
	height: min(2.7777777778vw, 40px);
	justify-content: center;
	line-height: 150%;
	width: min(2.7777777778vw, 40px);
}

.flow__item-tite {
	font-size: min(1.3888888889vw, 20px);
	font-weight: 700;
	line-height: 150%;
}

.flow__item-tite span {
	color: #BE0023;
}

.flow__item-icon {
	display: none;
}

.flow__item-text {
	color: #6C6C6C;
	font-size: min(1.0416666667vw, 15px);
	font-weight: 500;
	line-height: 150%;
	margin-top: min(0.5555555556vw, 8px);
}

.voice {
	margin-top: min(7.6388888889vw, 110px);
}

.voice__flex {
	display: flex;
	justify-content: space-between;
	margin: min(2.2222222222vw, 32px) auto 0;
	width: min(79.9305555556vw, 1151px);
}

.voice__item {
	width: min(24.5138888889vw, 353px);
}

.voice__item-img {
	border-radius: min(1.0416666667vw, 15px);
	height: min(13.8194444444vw, 199px);
	width: 100%;
}

.voice__item-img img {
	border-radius: min(1.0416666667vw, 15px);
	height: inherit;
	object-fit: contain;
}

.voice__item-title {
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
	display: -webkit-box;
	font-size: min(1.5277777778vw, 22px);
	font-weight: 600;
	line-height: 150%;
	margin-top: min(0.6944444444vw, 10px);
	overflow: hidden;
}

.voice__item-text {
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 5;
	color: #6C6C6C;
	display: -webkit-box;
	font-size: min(1.0416666667vw, 15px);
	font-weight: 500;
	line-height: 150%;
	margin-top: min(0.6944444444vw, 10px);
	overflow: hidden;
}

.voice__item-client {
	font-size: min(1.25vw, 18px);
	font-weight: 600;
	line-height: 150%;
	margin-top: min(1.3888888889vw, 20px);
	padding-left: min(1.25vw, 18px);
	position: relative;
}

.voice__item-client::before {
	background-color: #E3E3E3;
	content: "";
	height: min(0.0694444444vw, 1px);
	left: 50%;
	position: absolute;
	top: max(-0.78125vw, -10px);
	transform: translateX(-50%);
	width: 100%;
}

.voice__item-client::after {
	background-color: #BE0023;
	content: "";
	height: min(0.5555555556vw, 8px);
	left: 0;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: min(0.5555555556vw, 8px);
}

.slider .slick-arrow {
	background: none;
	border: none;
	bottom: 0;
	cursor: pointer;
	display: none;
	font-size: 0;
	height: 12.9770992366vw;
	outline: none;
	padding: 0;
	position: absolute;
	width: 12.9770992366vw;
	z-index: 1;
}

.slider .slick-arrow::before {
	content: "";
	display: block;
	height: 12.9770992366vw;
	left: 50%;
	position: absolute;
	top: 0;
	transform: translateX(-50%);
	width: 12.9770992366vw;
}

.slider .slick-next {
	right: 33%;
}

.slider .slick-prev {
	left: 33%;
}

.slider .slick-next::before {
	background: url(../img/vector-right.png) no-repeat center center/contain;
}

.slider .slick-prev::before {
	background: url(../img/vector-left.png) no-repeat center center/contain;
}

.faq {
	background-color: #F7F7F7;
	border-radius: min(0.6944444444vw, 10px);
	margin: min(7.6388888889vw, 110px) auto 0;
	padding: min(4.1666666667vw, 60px) 0;
	width: min(86.1111111111vw, 1240px);
}

.faq__content {
	margin: min(2.2222222222vw, 32px) auto 0;
	width: min(53.9583333333vw, 777px);
}

.accordion-item {
	background-color: #FFFFFF;
	border-radius: min(0.6944444444vw, 10px);
	cursor: pointer;
	padding: min(2.2222222222vw, 32px) min(3.5416666667vw, 51px);
}

.accordion-item:not(:first-child) {
	margin-top: min(0.8333333333vw, 12px);
}

.accordion-title {
	font-size: min(1.1111111111vw, 16px);
	font-weight: 500;
	line-height: 150%;
	padding-left: min(2.5vw, 36px);
	position: relative;
}

.accordion-title::before {
	border-right: min(0.0694444444vw, 1px) solid #121212;
	content: "Q.";
	font-size: min(1.1111111111vw, 16px);
	font-weight: 700;
	height: min(1.875vw, 27px);
	left: 0;
	line-height: min(1.875vw, 27px);
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: min(1.7361111111vw, 25px);
}

.accordion-title::after {
	background: url(../img/faq_vector.png) no-repeat center center/contain;
	content: "";
	display: block;
	height: min(0.4513888889vw, 6.5px);
	position: absolute;
	right: max(-2.0138888889vw, -29px);
	top: 50%;
	transform: translateY(-50%);
	transition: transform 0.3s ease-in-out, top 0.3s ease-in-out;
	width: min(0.9027777778vw, 13px);
}

.accordion-content {
	display: none;
	font-size: min(1.1111111111vw, 16px);
	font-weight: 500;
	line-height: 150%;
	margin-top: min(0.8333333333vw, 12px);
	padding-left: min(2.5vw, 36px);
	position: relative;
}

.accordion-content::before {
	border-right: min(0.0694444444vw, 1px) solid #BE0023;
	color: #BE0023;
	content: "A.";
	font-size: min(1.1111111111vw, 16px);
	font-weight: 700;
	height: min(1.875vw, 27px);
	left: 0;
	line-height: min(1.875vw, 27px);
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: min(1.7361111111vw, 25px);
}

.accordion-title.open::after {
	transform: rotate(180deg);
}

.news {
	background-color: #F7F7F7;
	border-radius: min(1.0416666667vw, 15px);
	margin: min(7.6388888889vw, 110px) auto 0;
	padding: min(4.1666666667vw, 60px) min(4.1666666667vw, 60px) min(2.2222222222vw, 32px);
	width: min(86.1111111111vw, 1240px);
}

.news__content {
	margin-top: min(2.2222222222vw, 32px);
}

.news__item {
	align-items: flex-start;
	background-color: #FFFFFF;
	border-radius: min(1.0416666667vw, 15px);
	display: flex;
	padding: min(1.7361111111vw, 25px) min(1.4583333333vw, 21px);
}

.news__item:not(:first-child) {
	margin-top: min(1.25vw, 18px);
}

.news__item:hover .news__vector {
	transform: translateX(min(0.3472222222vw, 5px));
}

.news__date {
	font-size: min(1.25vw, 18px);
	font-weight: 400;
	line-height: 150%;
	width: min(7.6388888889vw, 110px);
}

.news__category {
	background-color: #F7F7F7;
	border-radius: min(0.3472222222vw, 5px);
	font-size: min(0.9722222222vw, 14px);
	font-weight: 400;
	margin-left: min(0.2083333333vw, 3px);
	padding: min(0.2777777778vw, 4px) min(0.9027777778vw, 13px);
	white-space: nowrap;
}

.news__title {
	font-size: min(1.1111111111vw, 16px);
	font-weight: 600;
	line-height: 150%;
	margin-left: min(2.1527777778vw, 31px);
	width: min(51.3888888889vw, 740px);
}

.news__vector {
	height: min(2.8472222222vw, 41px);
	margin-left: min(2.1527777778vw, 31px);
	transition: 0.3s;
	width: min(2.8472222222vw, 41px);
}

.news__link {
	margin-top: min(2.2222222222vw, 32px);
	text-align: center;
}

.news__link a {
	font-size: min(1.1111111111vw, 16px);
	font-weight: 700;
	line-height: 150%;
}

.seminar {
	margin-top: min(7.6388888889vw, 110px);
}

.seminar__flex {
	display: flex;
	justify-content: space-between;
	margin: min(2.2222222222vw, 32px) auto 0;
	width: min(79.9305555556vw, 1151px);
}

.seminar__item {
	width: min(24.5138888889vw, 353px);
}

.seminar__item-img {
	border-radius: min(1.0416666667vw, 15px);
	height: min(13.8194444444vw, 199px);
	width: 100%;
}

.seminar__item-img img {
	border-radius: min(1.0416666667vw, 15px);
	height: inherit;
	object-fit: contain;
}

.seminar__item-title {
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
	display: -webkit-box;
	font-size: min(1.5277777778vw, 22px);
	font-weight: 600;
	line-height: 150%;
	margin-top: min(0.6944444444vw, 10px);
	overflow: hidden;
}

.seminar__item-text {
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
	color: #6C6C6C;
	display: -webkit-box;
	font-size: min(1.0416666667vw, 15px);
	font-weight: 500;
	line-height: 150%;
	margin-top: min(0.6944444444vw, 10px);
	overflow: hidden;
}

.seminar__item-category {
	color: #6c6c6c;
	font-size: min(0.9722222222vw, 14px);
	font-weight: 400;
	line-height: 150%;
	margin-top: min(1.3888888889vw, 20px);
	position: relative;
}

.seminar__item-category::before {
	background-color: #E3E3E3;
	content: "";
	height: min(0.0694444444vw, 1px);
	left: 50%;
	position: absolute;
	top: max(-0.78125vw, -10px);
	transform: translateX(-50%);
	width: 100%;
}

.seminar__item-date {
	font-size: min(1.25vw, 18px);
	font-weight: 600;
	line-height: 150%;
	margin-top: min(0.6944444444vw, 10px);
	padding-left: min(1.25vw, 18px);
	position: relative;
}

.seminar__item-date::after {
	background-color: #BE0023;
	content: "";
	height: min(0.5555555556vw, 8px);
	left: 0;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: min(0.5555555556vw, 8px);
}

.info {
	margin-top: min(7.6388888889vw, 110px);
}

.info__flex {
	display: flex;
	justify-content: space-between;
	margin: min(2.2222222222vw, 32px) auto 0;
	width: min(79.9305555556vw, 1151px);
}

.info__item {
	list-style: none;
	width: min(24.5138888889vw, 353px);
}

.info__item-img {
	border-radius: min(1.0416666667vw, 15px);
	height: min(13.8194444444vw, 199px);
	width: 100%;
}

.info__item-img img {
	border-radius: min(1.0416666667vw, 15px);
	height: inherit;
	object-fit: fill;
}

.info__item-title {
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
	display: -webkit-box;
	font-size: min(1.5277777778vw, 22px);
	font-weight: 600;
	line-height: 150%;
	margin-top: min(0.6944444444vw, 10px);
	overflow: hidden;
}

.info__item-date {
	color: #6C6C6C;
	font-size: min(1.1111111111vw, 16px);
	font-weight: 600;
	line-height: 150%;
	margin-top: min(0.6944444444vw, 10px);
}

.info__item-text {
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 5;
	color: #6C6C6C;
	display: -webkit-box;
	font-size: min(1.0416666667vw, 15px);
	font-weight: 500;
	line-height: 150%;
	margin-top: min(0.6944444444vw, 10px);
	overflow: hidden;
}

.service {
	margin: min(7.6388888889vw, 110px) auto 0;
}

.service__inner {
	margin: 0 auto;
	width: min(86.1111111111vw, 1240px);
}

.service__content {
	margin-top: min(2.2222222222vw, 32px);
}

.service__flex {
	align-items: center;
	display: flex;
	gap: min(3.8194444444vw, 55px);
	justify-content: center;
}

.service__flex:not(:first-child) {
	margin-top: min(2.0833333333vw, 30px);
}

.service__icon {
	width: min(calc(220 / 1440 * 100vw),220px);
}

.service__under_icon-2 {
	width: 36.3867684478vw;
}

.service__text {
	font-size: min(1.3888888889vw, 20px);
	font-weight: 600;
	line-height: 150%;
	width: min(36.1111111111vw, 520px);
}

.service__link {
	border: min(0.1388888889vw, 2px) solid #BE0023;
	border-radius: min(6.9444444444vw, 100px);
	color: #BE0023;
	font-size: min(1.25vw, 18px);
	font-weight: 600;
	line-height: 150%;
	padding: min(1.1458333333vw, 16.5px) min(3.4722222222vw, 50px);
}

.service__under {
	align-items: center;
	background: url(../img/service_under_bg.png) no-repeat center center/cover;
	border-radius: min(1.0416666667vw, 15px);
	display: flex;
	justify-content: space-between;
	margin: min(7.6388888889vw, 110px) auto 0;
	padding: min(1.9444444444vw, 28px) min(5.0694444444vw, 73px) min(1.3888888889vw, 20px);
	width: min(72.2222222222vw, 1040px);
}

.service__under_icon {
	width: min(8.9583333333vw, 129px);
}

.service__under_middle {
	width: min(34.7222222222vw, 500px);
}

.service__under_title {
	font-size: min(1.8055555556vw, 26px);
	font-weight: 700;
	line-height: 150%;
}

.service__under_text {
	font-size: min(1.0416666667vw, 15px);
	font-weight: 400;
	line-height: 150%;
	margin-top: min(0.7638888889vw, 11px);
}

.service__under_link {
	background-color: #121212;
	border-radius: min(6.9444444444vw, 100px);
	color: #FFFFFF;
	font-size: min(1.25vw, 18px);
	font-weight: 600;
	line-height: 150%;
	padding: min(1.1458333333vw, 16.5px) min(3.4722222222vw, 50px);
}

.company {
	display: flex;
	gap: min(3.5416666667vw, 51px);
	justify-content: flex-end;
	margin: min(7.6388888889vw, 110px) auto 0;
}

.company__left {
	padding-bottom: min(4.9305555556vw, 71px);
}

.company__table {
	font-size: min(1.1111111111vw, 16px);
	font-weight: 600;
	line-height: 150%;
	margin-top: min(4.3055555556vw, 62px);
}

.company__table tr {
	display: block;
}

.company__table tr:not(:last-child) {
	border-bottom: min(0.0694444444vw, 1px) solid #D9D9D9;
	padding-bottom: min(1.6666666667vw, 24px);
}

.company__table tr:not(:first-child) {
	margin-top: min(1.6666666667vw, 24px);
}

.company__table th {
	text-align: left;
	width: min(8.3333333333vw, 120px);
}

.company__table td {
	padding-left: min(1.9444444444vw, 28px);
	width: min(23.2291666667vw, 334.5px);
}

.company__table td span {
	display: inline-block;
	height: min(1.3888888889vw, 20px);
	margin-left: min(0.5555555556vw, 8px);
	padding-top: min(0.2777777778vw, 4px);
	width: min(1.3888888889vw, 20px);
}

.company__right {
	max-width: 1000px;
	width: 57.9166666667vw;
}

.company__right iframe {
	height: 100%;
	max-width: inherit;
	width: inherit;
}

footer {
	background-color: #F7F7F7;
	padding: min(3.5416666667vw, 51px) 0 min(0.8333333333vw, 12px);
	margin-top: min(7.6388888889vw, 110px);
}

.footer__content {
	background-color: #FFFFFF;
	border-radius: min(1.0416666667vw, 15px);
	margin: 0 auto;
	padding: min(3.75vw, 54px) min(5.2777777778vw, 76px) min(4.0277777778vw, 58px);
	width: min(86.1111111111vw, 1240px);
}

.footer__logo {
	width: min(14.9305555556vw, 215px);
}

.footer__flex {
	display: flex;
	gap: min(8.3333333333vw, 120px);
	margin-top: min(2.7777777778vw, 40px);
}

.footer__link a {
	font-size: min(1.0416666667vw, 15px);
	font-weight: 500;
	line-height: 180%;
}

.footer__link:not(:first-child) {
	margin-top: min(0.5555555556vw, 8px);
}

.footer__title {
	font-size: min(1.0416666667vw, 15px);
	font-weight: 700;
	line-height: 180%;
}

.footer__list-2 {
	padding-left: min(0.8333333333vw, 12px);
}

.footer__link-2 a {
	font-size: min(1.0416666667vw, 15px);
	font-weight: 500;
	line-height: 180%;
}

.footer__title-2 {
	margin-top: min(2.0833333333vw, 30px);
}

.footer__copyright {
	font-size: min(1.1111111111vw, 16px);
	font-weight: 500;
	line-height: 150%;
	margin-top: min(1.0416666667vw, 15px);
	text-align: center;
}

@media (min-width: 2000px) {

.company {
	justify-content: center;
}

}

@media (max-width: 767px) {

.only-sp {
	display: block;
}

.only-pc {
	display: none;
}

.only-pc-inline-block {
	display: none;
}

.section__title_en {
	font-size: 3.8167938931vw;
}

.section__title_ja {
	font-size: 6.6157760814vw;
	margin-top: 1.5267175573vw;
	padding-bottom: 1.7811704835vw;
}

.section__title_ja::before {
	height: 0.5089058524vw;
	width: 10.1781170483vw;
}

.section__title_ja::after {
	height: 0.5089058524vw;
	width: 5.0890585242vw;
}

header {
	box-shadow: 0 1.0178117048vw 3.5623409669vw 0 rgba(0, 0, 0, 0.1);
	padding: 2.0356234097vw 3.3078880407vw 2.2900763359vw 5.3435114504vw;
}

.header__logo {
	width: 28.2442748092vw;
}

.header__menu {
	display: none;
}

.header__btn {
	border-radius: 1.272264631vw;
	font-size: 3.5623409669vw;
	padding: 3.0534351145vw;
}

.header__download {
	margin-left: 0;
}

.header__consulting {
	margin-left: 2.2900763359vw;
}

.header__login {
	display: none;
}

.fv {
	background: url(../img/fv_bg-sp.png) no-repeat center center/cover;
	padding: 17.3027989822vw 0 4.5801526718vw;
}

.fv__flex {
	align-items: center;
	flex-direction: column;
	width: 90.8396946565vw;
}

.fv__left {
	width: 100%;
}

.fv__text {
	font-size: 4.0661577608vw;
}

.fv__text::after {
	bottom: 0.7633587786vw;
	height: 0.4503816794vw;
}

.fv__text-number {
	font-size: 7.4452926209vw;
}

.fv__title {
	font-size: 6.2086513995vw;
	margin-top: 3.8167938931vw;
	white-space: nowrap;
}

.fv__title span {
	font-size: 7.5572519084vw;
}

.fv__logo-container {
	width: 100%;
	box-sizing: border-box;
	padding: 5.641vw 0 5.128vw;
	border-radius: 1.538vw;
	display: flex;
	justify-content: center;
}

.fv__logo-container img {
	width: 46.9%;
}

.fv__logo-top {
	flex-direction: column;
	gap: 2.6743002545vw;
	padding: 1.272264631vw 5.3435114504vw;
}

.fv__logo-top-text {
	font-size: 3.7455470738vw;
}

.fv__logo-top-adyell {
	width: 29.6208651399vw;
}

.fv__logo-under {
	gap: 4.0712468193vw;
	margin-top: 5.0890585242vw;
	padding: 0.8778625954vw 0 1.0407124682vw;
}

.fv__logo-under::before {
	height: 0.1348600509vw;
	top: -2.5445292621vw;
	width: 83.9694656489vw;
}

.fv__logo-under::after {
	border-left: 0.1348600509vw dotted #ABABAB;
	height: 14.2493638677vw;
	left: 50.3816793893vw;
	width: 0.1348600509vw;
}

.fv__logo-under-left {
	gap: 1.0687022901vw;
}

.fv__logo-under-left-title {
	font-size: 2.6743002545vw;
	padding: 1.8193384224vw 1.1450381679vw 0.9796437659vw;
}

.fv__logo-under-left-logo {
	width: 23.4885496183vw;
}

.fv__logo-under-right {
	gap: 1.0712468193vw;
}

.fv__logo-under-right-title {
	font-size: 2.6743002545vw;
	padding: 1.9083969466vw 2.417302799vw;
}

.fv__logo-under-right-logo {
	width: 23.3638676845vw;
}

.fv__pattern {
	margin-top: 6.106870229vw;
	width: 100%;
}

.fv__pattern-title {
	border-radius: 2.2493638677vw 2.2493638677vw 0 0;
	font-size: 3.5623409669vw;
	gap: 1.6055979644vw;
	padding: 2.8295165394vw 0 2.272264631vw;
}

.fv__pattern-title span {
	font-size: 4.5801526718vw;
	line-height: 5.4452926209vw;
}

.fv__pattern-content {
	border-radius: 0 0 2.2493638677vw 2.2493638677vw;
	padding: 4.8142493639vw 2.6946564885vw 2.5445292621vw;
}

.fv__pattern-item {
	flex-direction: column;
	gap: 2.0356234097vw;
}

.fv__pattern-item:not(:first-child) {
	margin-top: 3.0534351145vw;
}

.fv__pattern-item-title {
	border: 0.2671755725vw solid #121212;
	border-radius: 1.3384223919vw;
	font-size: 4.0712468193vw;
	line-height: 6.2340966921vw;
	padding: 0.8905852417vw 0;
	text-align: center;
	width: 100%;
}

.fv__pattern-item-right {
	gap: 1.0687022901vw;
}

.fv__pattern-item-right-text {
	border-radius: 1.3384223919vw;
	font-size: 3.5623409669vw;
	line-height: 6.2340966921vw;
	padding: 1.6335877863vw 1.272264631vw;
}

.fv__pattern-item-right-text span {
	font-size: 5.0890585242vw;
	line-height: 6.2340966921vw;
}

.fv__pattern-item-right-text-2 {
	padding: 1.6335877863vw 15.8015267176vw;
}

.fv__right {
	width: 100%;
}

.fv__right-pc {
	transform: scale(1.1);
}

.fv__right-flex {
	gap: 2.0356234097vw;
	margin-top: 0;
}

.fv__right-item {
	backdrop-filter: blur(1.1628498728vw);
	box-shadow: 0 0.7735368957vw 1.9363867684vw rgba(0, 0, 0, 0.1);
	height: 29.0432569975vw;
	width: 29.0432569975vw;
}

.fv__right-item-text {
	font-size: 3.4860050891vw;
}

.fv__right-item-text-2 {
	font-size: 3.8727735369vw;
}

.fv__right-item-text-span {
	font-size: 5.4223918575vw;
}

.fv__right-item-text-span-2 {
	font-size: 4.2595419847vw;
}

.fv__right-item-text-span-3 {
	font-size: 7.358778626vw;
}

.fv__right-item-text-span-4 {
	font-size: calc(16 / 390 * 100vw);
}

.fv__link-container {
	flex-direction: column;
	gap: 2.7989821883vw;
	margin-top: 4.7989821883vw;
}

.fv__link {
	border-radius: 21.3994910941vw;
	box-shadow: 0 1.6055979644vw 0 rgba(0, 0, 0, 0.2);
	font-size: 5.0890585242vw;
	padding: 4.5801526718vw 0;
	text-align: center;
	width: 84.7328244275vw;
}

.fv__link-sp {
	margin-top: 3.6870229008vw;
	text-align: center;
}

.fv-sp {
	background: url(../img/fv-sp-bg.png) no-repeat center center/cover;
	padding: calc(12 / 390 * 100vw) 0 calc(15 / 390 * 100vw);
}

.fv-sp__inner {
	margin: 0 auto;
	width: 91.0941475827vw;
}

.achievements {
	margin-top: 13.7404580153vw;
}

.achievements__inner {
	width: 94.9109414758vw;
}

.achievements__top {
	border-radius: 2.5445292621vw;
	font-size: 4.5801526718vw;
	padding: 8.1424936387vw 8.6513994911vw 4.0712468193vw;
}

.achievements__top::after {
	height: 15.2671755725vw;
	top: -7.3791348601vw;
	width: 15.2671755725vw;
}

.achievements__flex {
	margin-top: 5.0890585242vw;
}

.achievements__item {
	border-radius: 1.9669211196vw;
	padding: 0;
}

.achievements__item:first-child {
	width: 46.5648854962vw;
}

.achievements__item:nth-child(2) {
	width: 46.5648854962vw;
}

.achievements__title {
	border-radius: 0.7633587786vw;
	font-size: 4.0712468193vw;
	letter-spacing: 0.5903307888vw;
	margin: 3.0305343511vw auto 0;
	padding: 0.8651399491vw 0;
	width: 39.1857506361vw;
}

.achievements__flex-flex {
	justify-content: center;
}

.achievements__item-logo {
	margin-left: 0;
	margin-top: 3.8091603053vw;
	width: 8.3969465649vw;
}

.achievements__item-logo-2 {
	margin-left: 0;
	margin-top: 4.8244274809vw;
	width: 6.6819338422vw;
}

.achievements__item-text {
	font-size: 4.3256997455vw;
	letter-spacing: 0.1959287532vw;
}

.achievements__item-text span {
	font-size: 10.6870229008vw;
	letter-spacing: 0.1959287532vw;
}

.achievements__caution {
	font-size: 3.3078880407vw;
	margin-top: 6.6157760814vw;
}

.about {
	border-radius: 0;
	margin: 18.5750636132vw auto 0;
	padding: 12.1781170483vw 0 8.9058524173vw;
	width: 100%;
}

.about::after {
	height: 16.7659033079vw;
	top: -7.6335877863vw;
	width: 15.1603053435vw;
}

.about::before {
	display: none;
}

.about__title {
	font-size: 4.5801526718vw;
}

.about__title span {
	font-size: 6.6157760814vw;
}

.about__content {
	margin: 6.8982188295vw auto 0;
	width: 94.9109414758vw;
}

.about__text {
	font-size: 3.3078880407vw;
	margin: 14.5038167939vw auto 0;
	width: 94.9109414758vw;
}

.problem {
	margin-top: 20.1017811705vw;
}

.problem__flex {
	flex-direction: column;
	gap: 17.8117048346vw;
	margin-top: 19.8473282443vw;
}

.problem__item {
	border-radius: 3.8167938931vw;
	height: 75.572519084vw;
	padding-top: 17.048346056vw;
	width: 91.6030534351vw;
}

.problem__item::after {
	height: 21.1195928753vw;
	top: -8.6513994911vw;
	width: 83.7150127226vw;
}

.problem__fukidashi {
	font-size: 4.5801526718vw;
	top: -3.0534351145vw;
}

.problem__title {
	font-size: 5.5979643766vw;
}

.problem__img {
	margin-top: 2.5445292621vw;
	width: 46.0559796438vw;
}

.problem__img-2 {
	margin-top: 1.5267175573vw;
	width: 39.4402035623vw;
}

.problem__fukidashi-3 {
	top: -6.6157760814vw;
}

.problem__img-3 {
	width: 42.4936386768vw;
}

.features {
	border-radius: 3.8167938931vw;
	margin: 22.9007633588vw auto 0;
	padding: 15.5216284987vw 0 16.2544529262vw;
}

.features::after {
	display: none;
}

.features::before {
	display: none;
}

.features__list {
	margin: 16.0305343511vw auto 0;
	width: 94.9109414758vw;
}

.features__item {
	border-radius: 3.8167938931vw;
	flex-direction: column;
	gap: 5.0890585242vw;
	padding: 7.6335877863vw 5.0890585242vw 5.0890585242vw;
}

.features__item:not(:first-child) {
	margin-top: 5.5979643766vw;
}

.features__item:nth-child(2n) {
	flex-direction: column;
}

.features__content {
	width: 100%;
}

.features__number {
	font-size: 10.6870229008vw;
}

.features__title {
	font-size: 8.1424936387vw;
	margin-top: 2.5445292621vw;
}

.features__text {
	font-size: 4.0712468193vw;
	margin-top: 2.5445292621vw;
	white-space: normal;
}

.features__img {
	width: 100%;
}

.cta {
	background: url(../img/cta_bg-sp.png) no-repeat center center/cover;
	border-radius: 5.0890585242vw;
	border-style: 5.0890585242vw;
	margin: 8.9058524173vw auto 0;
	padding: 12.7226463104vw 5.0890585242vw 8.524173028vw;
	width: 94.9109414758vw;
}

.cta__flex {
	flex-direction: column;
	gap: 7.6335877863vw;
}

.cta__title {
	font-size: 8.3129770992vw;
	transform: translateY(-2.5445292621vw) rotate(-3.75deg);
}

.cta__title span {
	font-size: 9.9236641221vw;
}

.cta__title .cta__title-span-2 {
	font-size: 9.9236641221vw;
}

.cta__title::after {
	bottom: -1.7811704835vw;
	height: 0.7633587786vw;
}

.cta__right {
	flex-direction: column;
	gap: 6.6157760814vw;
}

.cta__item-text {
	font-size: 4.5801526718vw;
}

.cta__item-text span {
	font-size: 6.106870229vw;
}

.cta__item-text::after {
	bottom: -3.4351145038vw;
	height: 1.3994910941vw;
	width: 37.4045801527vw;
}

.cta__link {
	border-radius: 25.4452926209vw;
	font-size: 5.0890585242vw;
	margin-top: 5.4707379135vw;
	padding: 6.106870229vw 32.951653944vw 6.106870229vw 26.3358778626vw;
}

.cta__link::after {
	height: 10.4325699746vw;
	right: 19.9745547074vw;
	width: 10.4325699746vw;
}

.cta__link:hover::after {
	right: 19.9745547074vw;
}

.cta__link-2 {
	padding: 6.106870229vw 21.5012722646vw 6.106870229vw 12.3409669211vw;
}

.cta__link-2::after {
	right: 8.524173028vw;
}

.cta__link-2:hover::after {
	right: 8.524173028vw;
}

.price {
	margin-top: 21.1195928753vw;
}

.price__content {
	margin-top: 8.6513994911vw;
	padding: 12.9770992366vw 2.5445292621vw 2.5445292621vw;
}

.price__item:not(:first-child) {
	margin-top: 10.6870229008vw;
}

.price__item-title {
	font-size: 6.6157760814vw;
}

.price__table {
	margin: 7.6335877863vw auto 0;
}

.price__table th,
.price__table td {
	border: 0.2544529262vw solid #BDBDBD;
}

.table-pc {
	display: none;
}

.table-sp {
	display: table;
}

.price__table-ht-1 {
	font-size: 3.0534351145vw;
	height: 10.941475827vw;
	width: 18.5750636132vw;
}

.price__table-ht-2 {
	font-size: 3.5623409669vw;
	height: 10.941475827vw;
	width: 18.5750636132vw;
}

.price__table-ht-3 {
	font-size: 3.5623409669vw;
	width: 30.2798982188vw;
}

.price__table-ht-4 {
	font-size: 3.5623409669vw;
	height: 15.5216284987vw;
	width: 18.5750636132vw;
}

.price__table-ht-5 {
	width: 45.0381679389vw;
}

.price__table-td-1 {
	font-size: calc(18 / 390 * 100vw);
	height: 15.5216284987vw;
}

.price__table-td-1 span {
	font-size: calc(14 / 390 * 100vw);
}

.price__table-td-2 {
	font-size: 3.3078880407vw;
	padding: 2.2900763359vw;
	width: 45.0381679389vw;
}

.price__table-td-3 {
	height: 15.5216284987vw;
}

.price__table-td-4 {
	height: 30.7888040712vw;
}

.price__simulation {
	background-color: rgba(255, 0, 47, 0.1);
	margin-top: 15.5216284987vw;
	padding: 11.7048346056vw 5.0890585242vw;
}

.price__simulation::before {
	display: none;
}

.simu-card {
	border-radius: 3.8167938931vw;
	box-shadow: 0 0.5089058524vw 3.5623409669vw rgba(0, 0, 0, 0.1);
	width: 89.8218829517vw;
}

.simu-card__head {
	font-size: 5.0890585242vw;
	padding: 4.9618320611vw 0;
}

.simu-card__body {
	padding: 8.9058524173vw 5.0890585242vw 7.1246819338vw;
}

.simu-grid {
	gap: 5.0890585242vw;
	grid-template-columns: 1fr;
	width: 100%;
}

.simu-field {
	gap: 2.0356234097vw;
}

.simu-label {
	font-size: 4.0712468193vw;
}

input[type=number] {
	font-size: 4.0712468193vw;
	padding: 2.7989821883vw 11.1959287532vw 3.8167938931vw 2.7989821883vw;
	width: 67.1755725191vw;
}

.simu-unit {
	font-size: 4.0712468193vw;
	left: 69.2111959288vw;
}

.simu-actions {
	margin-top: 8.6513994911vw;
}

.simu-btn {
	border-radius: 12.7226463104vw;
	font-size: 4.5801526718vw;
	padding: 4.1984732824vw 9.9236641221vw;
}

.simu-result {
	padding: 11.4503816794vw 0;
}

.simu-result__value {
	font-size: 8.1424936387vw;
}

.simu-result__value-span {
	font-size: 5.5979643766vw;
}

.simu-note {
	font-size: 3.5623409669vw;
	margin-top: 5.0890585242vw;
}

.bg-gray {
	padding: 15.0127226463vw 0 7.1246819338vw;
}

.compare__content {
	border-radius: 0;
	margin: 8.1424936387vw auto 0;
	padding: 9.1603053435vw 2.9262086514vw;
	width: 100%;
}

.compare__table tr th:first-child {
	width: 20.3562340967vw;
}

.compare__table tr th:nth-child(2) {
	width: 45.8015267176vw;
}

.compare__table tr th:nth-child(3) {
	width: 27.989821883vw;
}

.compare__table tr td {
	border: 0.2544529262vw solid #FFFFFF;
	font-size: 3.5623409669vw;
	height: 21.1195928753vw;
}

.compare__th-1 {
	border-radius: 2.5445292621vw 2.5445292621vw 0 0;
	font-size: 3.5623409669vw;
	height: 17.8117048346vw;
}

.compare__th-2 {
	border-radius: 2.5445292621vw 2.5445292621vw 0 0;
}

.compare__th-2 img {
	width: 38.1679389313vw;
}

.compare__th-3 {
	border-radius: 2.5445292621vw 2.5445292621vw 0 0;
	font-size: 5.0890585242vw;
}

.compare__th-3 span {
	font-size: 3.0534351145vw;
}

.compare__th-4 {
	border: 0.2544529262vw solid #FFFFFF;
	font-size: 3.5623409669vw;
}

.compare__span-18 {
	font-size: 4.0712468193vw !important;
}

.compare__span-20 {
	font-size: 4.5801526718vw !important;
}

.flow {
	margin: 12.9770992366vw auto 0;
	width: 94.9109414758vw;
}

.flow__content {
	border-radius: 3.8167938931vw;
	margin-top: 8.1424936387vw;
	padding: 7.1246819338vw 8.9058524173vw;
}

.flow__title {
	border-radius: 2.5445292621vw;
	font-size: 4.5801526718vw;
	padding: 3.3078880407vw 11.5776081425vw;
}

.flow__flex {
	margin: 6.106870229vw auto 0;
	width: 100%;
}

.flow__img {
	display: none;
}

.flow__right {
	width: 100%;
}

.flow__item:not(:first-child) {
	margin-top: 7.1246819338vw;
}

.flow__item-top {
	gap: 2.0356234097vw;
}

.flow__item-number {
	font-size: 3.5623409669vw;
	height: 10.1781170483vw;
	width: 10.1781170483vw;
}

.flow__item-tite {
	font-size: 4.0712468193vw;
}

.flow__item-icon {
	display: block;
	width: calc(49.74 / 390 * 100vw);
}

.flow__item-icon-2 {
	width: calc(52 / 390 * 100vw);
}

.flow__item-text {
	font-size: 3.5623409669vw;
	margin-top: 2.0356234097vw;
}

.voice {
	margin-top: 23.155216285vw;
}

.voice__flex {
	margin: 8.1424936387vw auto 0;
	padding-bottom: 24.6819338422vw;
	position: relative;
	width: 89.8218829517vw;
}

.voice__item {
	padding: 0 2.5445292621vw;
	width: 94.9109414758vw;
}

.voice__item-img {
	border-radius: 3.8167938931vw;
	height: 50.6361323155vw;
}

.voice__item-img img {
	border-radius: 3.8167938931vw;
}

.voice__item-title {
	font-size: 5.5979643766vw;
	margin-top: 2.5445292621vw;
}

.voice__item-text {
	font-size: 3.8167938931vw;
	margin-top: 2.5445292621vw;
}

.voice__item-client {
	font-size: 4.5801526718vw;
	margin-top: 5.0890585242vw;
	padding-left: 4.5801526718vw;
}

.voice__item-client::before {
	height: 0.2544529262vw;
	top: -2.5445292621vw;
}

.voice__item-client::after {
	height: 2.0356234097vw;
	width: 2.0356234097vw;
}

.faq {
	border-radius: 2.5445292621vw;
	margin: 7.1246819338vw auto 0;
	padding: 15.2671755725vw 0 2.5445292621vw;
	width: 100%;
}

.faq__content {
	margin: 8.1424936387vw auto 0;
	width: 94.9109414758vw;
}

.accordion-item {
	border-radius: 2.5445292621vw;
	padding: 8.1424936387vw 7.8880407125vw 8.1424936387vw 5.0890585242vw;
}

.accordion-item:not(:first-child) {
	margin-top: 3.0534351145vw;
}

.accordion-title {
	font-size: 4.0712468193vw;
	padding-left: 9.1603053435vw;
}

.accordion-title::before {
	border-right: 0.2544529262vw solid #121212;
	font-size: 4.0712468193vw;
	height: 6.8702290076vw;
	line-height: 6.8702290076vw;
	width: 6.6157760814vw;
}

.accordion-title::after {
	height: 1.6539440204vw;
	right: -5.8524173028vw;
	width: 3.3078880407vw;
}

.accordion-content {
	font-size: 4.0712468193vw;
	margin-top: 3.0534351145vw;
	padding-left: 9.1603053435vw;
}

.accordion-content::before {
	border-right: 0.2544529262vw solid #BE0023;
	font-size: 4.0712468193vw;
	height: 6.8702290076vw;
	line-height: 6.8702290076vw;
	width: 6.6157760814vw;
}

.news {
	border-radius: 2.5445292621vw;
	margin-top: 0;
	padding: 15.2671755725vw 2.5445292621vw;
	width: 100%;
}

.news__content {
	margin-top: 8.1424936387vw;
}

.news__item {
	border-radius: 3.8167938931vw;
	flex-wrap: wrap;
	padding: 6.6157760814vw 5.3435114504vw;
}

.news__item:not(:first-child) {
	margin-top: 4.5801526718vw;
}

.news__date {
	font-size: 4.0712468193vw;
	width: 27.989821883vw;
}

.news__category {
	border-radius: 1.272264631vw;
	font-size: 3.5623409669vw;
	margin-left: 0.7633587786vw;
	padding: 1.0178117048vw 3.3078880407vw;
}

.news__title {
	font-size: 4.0712468193vw;
	margin-left: 0;
	margin-top: 2.5445292621vw;
	width: 100%;
}

.news__vector {
	height: 10.4325699746vw;
	margin-left: 0;
	margin-top: 5.0890585242vw;
	width: 10.4325699746vw;
}

.news__link {
	margin-top: 8.1424936387vw;
}

.news__link a {
	font-size: 4.0712468193vw;
}

.seminar {
	margin-top: 11.7048346056vw;
}

.seminar__flex {
	margin: 19.8473282443vw auto 0;
	padding-bottom: 24.6819338422vw;
	position: relative;
	width: 89.8218829517vw;
}

.seminar__flex::after {
	background-color: #E3E3E3;
	content: "";
	height: 0.2544529262vw;
	left: 50%;
	position: absolute;
	top: -11.7048346056vw;
	transform: translateX(-50%);
	width: 100%;
}

.seminar__item {
	padding: 0 2.5445292621vw;
	width: 94.9109414758vw;
}

.seminar__item-img {
	border-radius: 3.8167938931vw;
	height: 50.6361323155vw;
}

.seminar__item-img img {
	border-radius: 3.8167938931vw;
}

.seminar__item-title {
	font-size: 5.5979643766vw;
	margin-top: 2.5445292621vw;
}

.seminar__item-text {
	font-size: 3.8167938931vw;
	margin-top: 2.5445292621vw;
}

.seminar__item-category {
	font-size: 3.5623409669vw;
	margin-top: 5.0890585242vw;
}

.seminar__item-category::before {
	height: 0.2544529262vw;
	top: -2.5445292621vw;
}

.seminar__item-date {
	font-size: 4.5801526718vw;
	margin-top: 5.0890585242vw;
	padding-left: 4.5801526718vw;
}

.seminar__item-date::after {
	height: 2.0356234097vw;
	width: 2.0356234097vw;
}

.info {
	margin-top: 11.7048346056vw;
}

.info__flex {
	margin: 19.8473282443vw auto 0;
	padding-bottom: 24.6819338422vw;
	position: relative;
	width: 89.8218829517vw;
}

.info__flex::after {
	background-color: #E3E3E3;
	content: "";
	height: 0.2544529262vw;
	left: 50%;
	position: absolute;
	top: -11.7048346056vw;
	transform: translateX(-50%);
	width: 100%;
}

.info__item {
	padding: 0 2.5445292621vw;
	width: 94.9109414758vw;
}

.info__item-img {
	border-radius: 3.8167938931vw;
	height: 50.6361323155vw;
}

.info__item-img img {
	border-radius: 3.8167938931vw;
}

.info__item-title {
	font-size: 5.5979643766vw;
	margin-top: 2.5445292621vw;
}

.info__item-date {
	font-size: 4.0712468193vw;
	margin-top: 2.5445292621vw;
}

.info__item-text {
	font-size: 3.8167938931vw;
	margin-top: 2.5445292621vw;
}

.service {
	margin: 24.427480916vw auto 0;
}

.service__inner {
	width: 89.8218829517vw;
}

.service__content {
	margin-top: 15.7760814249vw;
}

.service__flex {
	align-items: flex-start;
	flex-direction: column;
}

.service__flex:not(:first-child) {
	margin-top: 15.2671755725vw;
}

.service__icon {
	width: calc(220 / 390 * 100vw);
}

.service__text {
	font-size: 5.0890585242vw;
	width: 100%;
}

.service__link {
	border: 0.5089058524vw solid #BE0023;
	border-radius: 25.4452926209vw;
	font-size: 4.5801526718vw;
	padding: 4.1984732824vw 12.7226463104vw;
}

.service__under {
	background: url(../img/service_under_bg-sp.png) no-repeat center center/cover;
	border-radius: 3.8167938931vw;
	flex-direction: column;
	gap: 7.1246819338vw;
	margin-top: 11.9592875318vw;
	padding: 4.5801526718vw 2.5445292621vw 3.5623409669vw;
	width: 100%;
}

.service__under_icon {
	width: 32.8244274809vw;
}

.service__under_middle {
	width: 100%;
}

.service__under_title {
	font-size: 6.106870229vw;
	white-space: nowrap;
}

.service__under_text {
	font-size: 3.8167938931vw;
	margin-top: 2.7989821883vw;
}

.service__under_link {
	border-radius: 25.4452926209vw;
	font-size: 4.5801526718vw;
	padding: 4.1984732824vw 12.7226463104vw;
}

.company {
	flex-direction: column;
	gap: 12.9770992366vw;
	margin: 12.7226463104vw auto 0;
	padding-bottom: 11.7048346056vw;
	width: 94.9109414758vw;
}

.company__left {
	padding-bottom: 0;
}

.company__table {
	font-size: 4.0712468193vw;
	margin-top: 15.7760814249vw;
	width: 100%;
}

.company__table tr {
	display: flex;
	flex-direction: column;
}

.company__table tr:not(:last-child) {
	border-bottom: 0.2544529262vw solid #D9D9D9;
	padding-bottom: 3.5623409669vw;
}

.company__table tr:not(:first-child) {
	margin-top: 3.5623409669vw;
}

.company__table th {
	width: 100%;
}

.company__table td {
	padding-left: 0;
	width: 100%;
}

.company__table td span {
	height: 5.0890585242vw;
	margin-left: 2.0356234097vw;
	padding-top: 1.0178117048vw;
	width: 5.0890585242vw;
}

.company__right {
	height: 87.0229007634vw;
	width: 100%;
}

footer {
	padding: 7.1246819338vw 2.5445292621vw 4.0712468193vw;
	margin-top: calc(56 / 390 * 100vw);
}

.footer__content {
	border-radius: 3.8167938931vw;
	padding: 8.7786259542vw 2.5445292621vw 11.5776081425vw;
	width: 94.9109414758vw;
}

.footer__logo {
	width: 39.6946564885vw;
}

.footer__flex {
	flex-direction: column;
	gap: 9.1603053435vw;
	margin-top: 10.1781170483vw;
}

.footer__link a {
	font-size: 3.3078880407vw;
}

.footer__link:not(:first-child) {
	margin-top: 2.0356234097vw;
}

.footer__title {
	font-size: 3.5623409669vw;
	position: relative;
}

.footer__title::after {
	background-color: #EAEAEA;
	content: "";
	height: 0.2544529262vw;
	left: 0;
	position: absolute;
	top: -4.5801526718vw;
	width: 100%;
}

.footer__list-2 {
	padding-left: 3.0534351145vw;
}

.footer__link-2 a {
	font-size: 3.3078880407vw;
}

.footer__title-2 {
	margin-top: 10.1781170483vw;
}

.footer__copyright {
	font-size: 4.0712468193vw;
	margin-top: 5.0890585242vw;
}

}

/* ==========================================================================
   利用規約ページ（term_invoice-cardpayment）
   ========================================================================== */
.invcp-terms-hero {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
  width: 100%;
  padding: 80px 40px;
  background-color: #f7f7f7;
  margin-top: 80px;
  text-align: center;
}

.invcp-terms-hero__eyebrow {
  font-family: var(--font-roboto), "Avenir", sans-serif;
  font-size: 20px;
  font-weight: 600;
  color: #be0023;
  letter-spacing: 1px;
}

.invcp-terms-hero__title {
  font-family: var(--font-noto-sans-jp), sans-serif;
  font-size: 48px;
  font-weight: 700;
  color: #121212;
}

.invcp-terms-breadcrumb {
  width: 100%;
  padding: 20px 100px;
  background-color: #ffffff;
  border-bottom: 1px solid #e5e7eb;
}

.invcp-terms-breadcrumb__list {
  display: flex;
  align-items: center;
  gap: 12px;
  list-style: none;
}

.invcp-terms-breadcrumb__list li {
  font-family: var(--font-noto-sans-jp), sans-serif;
  font-size: 14px;
  color: #737373;
}

.invcp-terms-breadcrumb__list a {
  color: #737373;
  text-decoration: none;
}

.invcp-terms-breadcrumb__list a:hover {
  text-decoration: underline;
}

.invcp-terms-breadcrumb__list .is-current {
  font-weight: 700;
  color: #121212;
}

.invcp-terms-breadcrumb__separator {
  display: flex;
  align-items: center;
}

.invcp-terms-content {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 64px;
  width: 100%;
  padding: 80px 220px 120px;
}

.invcp-terms-content__lead {
  width: 100%;
  font-family: var(--font-noto-sans-jp), sans-serif;
  font-size: 16px;
  line-height: 1.8;
  font-weight: 400;
  color: #121212;
}

.invcp-terms-article-list {
  display: flex;
  flex-direction: column;
  gap: 48px;
  width: 100%;
}

.invcp-terms-article {
  display: flex;
  flex-direction: column;
  gap: 16px;
  width: 100%;
  margin: 0;
}

.invcp-terms-article__title {
  display: flex;
  align-items: center;
  gap: 12px;
  font-family: var(--font-noto-sans-jp), sans-serif;
  font-size: 24px;
  font-weight: 700;
  color: #be0023;
}

.invcp-terms-article__bar {
  flex-shrink: 0;
  width: 4px;
  height: 28px;
  border-radius: 2px;
  background-color: #be0023;
}

.invcp-terms-article__body {
  font-family: var(--font-noto-sans-jp), sans-serif;
  font-size: 16px;
  line-height: 1.8;
  font-weight: 400;
  color: #121212;
}

.invcp-terms-article__body p {
  font-family: var(--font-noto-sans-jp), sans-serif;
  font-size: inherit;
  line-height: inherit;
  font-weight: 400;
  color: #121212;
}

.invcp-terms-sub {
  display: block;
  padding-left: 1em;
}

.invcp-terms-article__body a {
  overflow-wrap: anywhere;
}

.invcp-terms-gap {
  display: block;
  height: 0.7em;
}

.invcp-terms-article__body p + p {
  margin-top: 0;
}

.invcp-terms-content__footer {
  display: flex;
  flex-direction: column;
  gap: 12px;
  width: 100%;
  padding-top: 40px;
  border-top: 1px solid #e5e7eb;
}

.invcp-terms-content__date {
  width: 100%;
  font-family: var(--font-noto-sans-jp), sans-serif;
  font-size: 14px;
  font-weight: 400;
  color: #737373;
  text-align: right;
}

@media screen and (max-width: 900px) {
  .invcp-terms-hero {
    gap: 8px;
    padding: 40px 20px;
	margin-top: 60px;
  }

  .invcp-terms-hero__eyebrow {
    font-size: 14px;
  }

  .invcp-terms-hero__title {
    font-size: 32px;
  }

  .invcp-terms-breadcrumb {
    padding: 14px 20px;
  }

  .invcp-terms-breadcrumb__list {
    gap: 8px;
  }

  .invcp-terms-breadcrumb__list li {
    font-size: 12px;
  }

  .invcp-terms-content {
    gap: 40px;
    padding: 40px 20px 64px;
  }

  .invcp-terms-content__lead {
    font-size: 14px;
    line-height: 1.7;
  }

  .invcp-terms-article-list {
    gap: 40px;
  }

  .invcp-terms-article {
    gap: 12px;
    padding: 0;
  }

  .invcp-terms-article__title {
    gap: 8px;
    font-size: 18px;
	line-height: 1.4;
  }

  .invcp-terms-article__bar {
    height: 20px;
  }

  .invcp-terms-article__body {
    font-size: 14px;
    line-height: 1.7;
  }

  .invcp-terms-content__footer {
    padding-top: 12px;
  }

  .invcp-terms-content__date {
    font-size: 12px;
  }
}

.invcp-terms-table-wrap {
    overflow-x: auto;
    margin-top: 16px;
}
.invcp-terms-table {
    width: 100%;
    min-width: 720px;
    border-collapse: collapse;
    font-size: 1em;
}
.invcp-terms-table th,
.invcp-terms-table td {
    border: 1px solid #ddd;
    padding: 10px 12px;
    text-align: left;
    vertical-align: top;
}
.invcp-terms-table th {
    background-color: #f7f7f7;
    font-weight: bold;
}
/* 注意事項ページ用（2026-10-06 追加） */
.invcp-terms-table--compact {
    min-width: 0;
}
.invcp-terms-table--compact th[scope="row"] {
    width: 28%;
}
.invcp-terms-precautions .invcp-terms-article__body p + p,
.invcp-terms-precautions .invcp-terms-article__body .invcp-terms-table-wrap + p,
.invcp-terms-precautions .invcp-terms-article__body p + .invcp-terms-table-wrap {
    margin-top: 1em;
}
.invcp-terms-precautions .invcp-terms-article__body > .invcp-terms-table-wrap:first-child {
    margin-top: 0;
}
.invcp-terms-note {
    font-size: 0.875em;
}
.invcp-terms-nw {
    display: inline-block;
    white-space: nowrap;
}
@media screen and (max-width: 767px) {
  .invcp-terms-table--compact th,
  .invcp-terms-table--compact td {
    padding: 10px 8px;
  }
  .invcp-terms-table--stack,
  .invcp-terms-table--stack tbody,
  .invcp-terms-table--stack tr,
  .invcp-terms-table--stack th,
  .invcp-terms-table--stack td {
    display: block;
    width: 100%;
  }
  .invcp-terms-table--compact.invcp-terms-table--stack th[scope="row"] {
    width: 100%;
  }
  .invcp-terms-table--stack tr + tr th {
    border-top: none;
  }
  .invcp-terms-table--stack td {
    border-top: none;
  }
}
/* 改行調整（2026-10-09 追加） */
.ay-form-lead,
.invcp-terms-precautions .invcp-terms-article__body p { word-break: auto-phrase; }

/* ===== フォームページ用（2026-09-02 追加） ===== */
.ay-form {
  width: 100%;
  max-width: 940px;
  margin: -24px auto 80px;
  padding: 0 20px;
}
.ay-form-lead {
  max-width: 940px;
  margin: 0 auto;
  padding: 0 60px;
  text-align: center;
}
.ay-thanks {
  width: 100%;
  max-width: 720px;
  margin: 40px auto 100px;
  padding: 0 20px;
  text-align: center;
}
.ay-thanks__text {
  font-size: 16px;
  line-height: 2;
}
.ay-thanks__btn {
  display: inline-block;
  margin-top: 40px;
  padding: 16px 48px;
  border: 1px solid #c30d23;
  border-radius: 32px;
  color: #c30d23;
  font-weight: bold;
}
.ay-thanks__btn:hover {
  background: #c30d23;
  color: #ffffff;
}

.sp-only { display: none; }
@media screen and (max-width: 768px) {
  .sp-only { display: inline; }
}
@media screen and (max-width: 767px) {
  .ay-form-lead { text-align: left; }
}
