@charset "UTF-8";
/* ---------------
変数
装飾
mixin
body以下
メディアクエリー
---------------*/
/*-------------------------------------
1.Style
2.Grid
-------------------------------------*/
/*-------------------------------------
Style

/*メインコンテンツ
-------------------------------------*/
section {
	padding: 3.6rem 0;
}
body {
	color: #604c3f;
}
/* 見出し
–––––––––––––––––––––––––––––––––––––––––––––––––– */
h1,
h2,
h3,
h4,
h5,
h6 {
	margin-top: 0;
	margin-bottom: 1rem;
	font-weight: 300;
}

h1 {
	font-size: 3.2rem;
	line-height: 1.2;
	letter-spacing: -0.1rem;
}
h2 {
	font-size: 32px;
}

figcaption {
	text-align: center;
	font-size: 1.6rem;
	margin-top: 0.6rem;
}

th,
td {
	border: solid 1px #dadada;
}

/*メインビジュアル
-------------------------------------*/
.mainimg {
	max-width: auto;
}
.mainimg img {
	margin: 0 auto;
	margin-bottom: -1rem;
	width: 100%;
}

/* h2:first-child {
	margin-top: 0;
} */

/*バナー
-------------------------------------*/
a.banner-link {
	margin: 0 auto 6rem;
	display: block;
	max-width: 96%;
	width: 100%;
}
a.banner-link-mv {
	margin: 6rem auto 0;
	display: block;
	max-width: 96%;
	width: 100%;
}
.banner {
	animation: banner 3s infinite;
}
@keyframes banner {
	0% {
		transform: translate(0px, 10px);
	}
	5% {
		transform: translate(0px, -10px);
	}
	10% {
		transform: translate(0px, 10px);
	}
	15% {
		transform: translate(0px, -10px);
	}
	20% {
		transform: translate(0px, 6px);
	}
	25% {
		transform: translate(0px, -6px);
	}
	30% {
		transform: translate(0px, 0px);
	}
}
p.limited {
	text-align: center;
	font-size: 32px;
	color: red;
	font-weight: 600;
}
p.limited-top {
	margin-top: 70px;
	margin-bottom: -60px;
	text-align: center;
	font-size: 32px;
	color: red;
	font-weight: 600;
}

/*mv上
-------------------------------------*/

.head-catchcopy p {
	max-width: 1000px;
	margin: 0 auto;
	font-size: 16px;
}
.head-point-area {
	background: #020042;
	color: white;
}
.head-point-area p {
	max-width: 1000px;
	margin: 0 auto;
	padding: 2rem;
	font-size: 20px;
}
span.point-title {
	font-weight: 600;
	font-size: 24px;
}

/*MV下　section-read
-------------------------------------*/
.seren p {
	font-size: 2rem;
}
.monitor-end {
	font-size: 3rem;
	font-weight: 600;
	text-align: center;
	color: red;
}

/*お問い合わせ
-------------------------------------*/
.order-title {
	background: #ffc5cd;
	padding: 1rem 3rem;
	max-width: fit-content;
	display: block;
	margin: 0 auto 2rem !important;
	border-radius: 30px;
	font-weight: 600;
	font-size: 2rem;
}
.order-list {
	max-width: 80%;
	display: block;
	margin: 0 auto;
	font-size: 2rem;
	padding-left: 50px;
	text-indent: -50px;
	text-align: center;
}
.about-order {
	font-size: 2rem;
}
.order-list img {
	display: inline;
	width: 38px;
	vertical-align: middle;
	margin-right: 1rem;
}
.order-list .arrow img {
	width: 98px;
	display: block;
	margin: 0 auto;
}
.about-survey {
	font-size: 1.6rem;
}
table.inquiry {
	border: 1px solid #ccc;
	text-align: center;
	padding: 2rem 0;
	width: 80%;
	margin: 2rem auto;
}
input {
	transition: all 0.5s;
}
table.inquiry th,
table.inquiry td {
	border: none;
	padding: 12px 0;
	border-bottom: 1px solid #e1e1e1;
	display: block;
	box-sizing: border-box;
	text-align: left;
	width: 100%;
	margin: 0 auto;
	max-width: 90%;
	line-height: 1.3;
}
table.inquiry th {
	background: #e1e1e1;
	max-width: 100%;
}

table.inquiry td {
	max-width: 90%;
}
.form-note {
	font-size: 1.4rem;
}
/*必須・任意の調整*/
.haveto,
.any {
	font-size: 1.4rem;
	padding: 4px 6px;
	color: #fff;
	border-radius: 5px;
	margin-right: 10px;
	margin-left: 13px;
	position: relative;
	bottom: 2px;
	font-family: "Helvetica Neue", "Helvetica", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo", sans-serif;
}

.haveto {
	background: #ff0000;
}

.any {
	background: #2d2d2d;
}
p#reCAPTCHA {
	font-size: 1.4rem;
	text-align: center;
	line-height: 1.2;
}

p#reCAPTCHA a {
	display: inline;
	color: blue;
}

div#acceptance_wrap {
	text-align: center;
	font-size: 1.4rem;
	margin-top: 1rem;
}
.wpcf7-form-control.wpcf7-acceptance {
	line-height: 0;
}
/* ボタン */
input[type="submit"],
input[type="reset"],
input[type="button"] {
	background: #046511;
	height: auto;
	padding: 2rem 6rem;
	border-radius: 8px;
	margin-top: 2rem;
	border: 2px solid #ffffff;
}
.btn {
	box-shadow: 0px 12px 24px rgba(76, 79, 80, 0.38);
	color: #fff !important;
	font-weight: 600 !important;
	display: inline-block;
	font-weight: 700;
	padding: 1.25rem 4rem;
	text-decoration: none;
	transition: 0.3s;
}

.btn:hover {
	box-shadow: 0 1px 4px rgba(0, 0, 0, 0.2);
	transform: translateY(4px);
	color: #fff !important;
	font-weight: 600 !important;
}
input[type="submit"]:hover,
input[type="reset"]:hover,
input[type="button"]:hover {
	opacity: 0.7;
	border: 2px solid #ed6f00;
}
.wpcf7-not-valid-tip {
	box-sizing: border-box;
	border-radius: 5px;
	background-color: #e50031;
	color: #fff;
	display: block;
	font-size: 14px;
	font-weight: bold;
	margin-top: 10px;
	padding: 10px 10px;
	position: relative;
	max-width: fit-content;
	font-size: 14px;
}
.wpcf7-not-valid-tip::before {
	content: "";
	border: 10px solid transparent;
	border-bottom: 15px solid #e50031;
	position: absolute;
	top: -20px;
	left: 5%;
}
.wpcf7-not-valid-tip {
	color: #fff !important;
}

/*フッター
-------------------------------------*/
.law-link {
	text-decoration: none;
	font-size: 1.4rem;
}
/*ページトップへ戻るボタン
-------------------------------------*/
/* 幅768px以下の表示
-------------------------------------*/
@media screen and (max-width: 768px) {
	h2 img {
		max-width: 100%;
	}

	/*お問い合わせ
-------------------------------------*/
	.order-list {
		max-width: 96%;
	}
	.order-list .arrow img {
		width: 68px;
	}
	.table th {
		width: 100%;
		display: block;
	}
	.table td {
		display: block;
	}
	table.inquiry {
		margin: 0 auto;
		width: 100%;
	}
}
/* 追加
–––––––––––––––––––––––––––––––––––––––––––––––––– */
/* 共通 */
:root {
	--bg-normal: #fff; /* 白 */
	--bg-worries: #f7f7f7; /* ネガティブ */
	--bg-success: #ffffff; /* ポジティブ */
	--bg-cta: #fcfbf5; /* CTA */

	--radius-sm: 4px; /* 小さめ角丸 */
	--radius-md: 6px; /* 標準角丸 */
	--radius-lg: 10px; /* 大きめ角丸 */
}

body {
	font-family: "Noto Serif JP", serif;
}
.mainimg img {
	max-width: 1300px;
}
h2 {
	text-align: center;
	font-weight: 600;
	margin-bottom: 2rem;
	line-height: 1.6;
}
strong {
	color: #604c3f;
	font-weight: 600;
	font-size: 2rem;
}
strong.red {
	color: #db4900;
	font-weight: 600;
}
.pc {
	display: block;
}
.sp {
	display: none;
}
th {
	background: #f6f6f6;
}
.img-center {
	display: block;
	margin: 0 auto;
}

/* MV */
.mainimg {
	max-width: 1000px;
}

/* CTA */
.section-cta {
	max-width: initial;
}

.section-cta h2 {
	text-align: center;
	font-weight: 600;
}
.section-cta h2 img {
	margin: 0 auto;
	max-width: 500px;
	width: 100%;
}
.head-cta {
	margin-top: 12px;
}
.section-cta {
	text-align: center;
	background: var(--bg-cta);
	margin-top: 3rem;
	border: #c3bab3 solid 1px;
	max-width: 1000px;
	padding: 3rem 0;
	border-radius: var(--radius-md);
	box-shadow: 0 2px 6px rgba(0, 0, 0, 0.05);
}
h3.cta-note {
	background: white;
	font-size: 2.2rem;
	max-width: 320px;
	display: block;
	margin: 3rem auto 0;
	padding: 0 1rem;
	font-weight: 600;
	border: #604c3f solid 2px;
	color: #604c3f;
}
.gentei10 {
	max-width: 600px;
	margin: 0 auto;
	width: 100%;
}
p.cta-description {
	font-weight: normal;
	font-size: 2.1rem;
}
span.cta-questionnaire {
	font-size: 1.6rem;
}
.cta-line img {
	max-width: 360px;
	width: 100%;
}
section.section-cta .container {
	padding-bottom: 3rem;
}

.section-cta img[src*="mottonail-lp-nailmenu-gentei.jpg"] {
	border: 1px solid rgba(0, 0, 0, 0.1);
	border-radius: 8px;
	box-shadow: 0 2px 4px rgba(0, 0, 0, 0.06);
}
@media screen and (max-width: 768px) {
	p.cta-note {
		padding: 1rem;
		font-size: 2rem;
	}
	p.cta-description {
		font-size: 1.8rem;
		text-align: left;
	}
	.section-cta {
		padding: 10px 10px 30px 10px;
		margin-left: 1rem;
		margin-right: 1rem;
	}
}
/* サロン紹介 */
section.section-intro {
	margin-top: 3rem;
	margin-bottom: 3rem;
}
section.section-intro h3 {
	text-align: center;
	font-size: 2.4rem;
	margin-top: 1rem;
	font-weight: 600;
}
.section-intro-jidume {
	border: 1px solid rgba(96, 76, 63, 0.3);
	border-radius: var(--radius-md);
	padding: 3rem 2rem;
	max-width: 70%;
	margin: 0 auto;
	text-align: center;
	letter-spacing: 0.5px;
	line-height: 1.8;
	box-shadow: 0 2px 6px rgba(0, 0, 0, 0.05);
}
.salon-logo {
	max-width: 300px;
	width: 100%;
}
@media screen and (max-width: 768px) {
	section.section-intro {
		margin-top: 0;
	}
	.section-intro-jidume {
		max-width: 100%;
		padding: 1rem;
	}
}

/* お悩み・変えられる */
section.section-worries,
section.section-change {
	background: var(--bg-worries);
}
.section-worries h2 {
	text-align: center;
	margin: 0 auto 2.5rem;
	line-height: 1.4;
}
.section-worries .problem-list,
.section-worries .recommend-list {
	list-style: none;
	padding-left: 0;
	margin: 3rem auto;
	max-width: 800px;
	font-weight: 600;
}

.section-worries .problem-list li,
.section-worries .recommend-list li {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	margin: 1rem 0;
	padding: 14px 16px;
	background: #fff;
	border: 1px solid rgba(0, 0, 0, 0.08);
	border-radius: 10px;
	line-height: 1.8;
}
.recommend-list li {
	background: #f7f7f7 !important;
}
.section-worries .problem-list li:nth-child(odd),
.section-worries .recommend-list li:nth-child(odd) {
	background-color: #fdfdfd;
}

.section-worries .problem-list li img,
.section-worries .recommend-list li img {
	width: 36px;
	flex: 0 0 auto;
	margin-top: 2px;
}

.section-worries .container > p {
	max-width: 880px;
	margin: 1.5rem auto 0;
	line-height: 1.9;
	text-align: left;
}

.section-worries .u-marker {
	background: linear-gradient(transparent 65%, #ffe7f1 0);
	padding: 0 0.1em;
}
.section-worries .problem-list li,
.section-worries .recommend-list li {
	display: flex;
	align-items: center;
	gap: 12px;
	margin: 1rem 0;
	padding: 14px 16px;
	background: #fff;
	border: 1px solid rgba(0, 0, 0, 0.08);
	border-radius: 10px;
	line-height: 1.8;
	box-shadow: 0 2px 6px rgba(0, 0, 0, 0.05);
}
.worries-note {
	max-width: 800px;
	margin: 0 auto;
}
section.section-change h2 {
	font-size: 2.4rem;
	margin-top: 0;
}
.section-change-box {
	background: var(--bg-normal);
	border: 1px solid rgba(0, 0, 0, 0.05);
	border-radius: var(--radius-md);
	box-shadow: 0 2px 6px rgba(0, 0, 0, 0.05);
	margin: 2rem auto;
	padding: 6rem;
	max-width: 100%;
	margin-top: -6rem;
}
.section-change-ba {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
	gap: 1.5rem;
	margin: 2.5rem 0;
	align-items: start;
}

.section-change-ba img {
	width: 100%;
	height: auto;
	border-radius: 10px;
	object-fit: cover;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
	transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.section-change .recommend-list {
	list-style: none;
	padding-left: 0;
	margin: 3rem auto;
	max-width: 800px;
}

.section-change .recommend-list li {
	display: flex;
	align-items: center;
	gap: 12px;
	margin: 1rem 0;
	padding: 16px 18px;
	background: #f7f7f7;
	border: 1px solid rgba(0, 0, 0, 0.06);
	border-radius: 10px;
	line-height: 1.8;
	font-weight: 500;
	color: #444;
	box-shadow: 0 2px 6px rgba(0, 0, 0, 0.05);
}

.section-change .recommend-list li img {
	width: 32px;
	flex: 0 0 auto;
	margin-top: 3px;
	filter: brightness(1.15);
}
.section-change h3 {
	text-align: center;
	margin: 6rem auto 2rem;
	padding-bottom: 0.5rem;
	display: block;
	width: 100%;
	font-weight: 600;
	font-size: 2.4rem;
	border-bottom: 2px solid;
	max-width: fit-content;
}
@media screen and (max-width: 768px) {
	.section-worries .problem-list,
	.section-worries .recommend-list {
		margin: 2rem 0;
	}

	.section-worries .problem-list li,
	.section-worries .recommend-list li {
		padding: 12px 14px;
		gap: 10px;
		margin: 12px 0;
		align-items: flex-start;
	}

	.section-worries .problem-list li img,
	.section-worries .recommend-list li img {
		width: 28px;
		margin-top: 3px;
	}

	.section-worries .container > p {
		padding: 0 1rem;
		text-align: left;
	}
	.section-change-box {
		padding: 3rem 1.8rem;
	}
	.section-change .recommend-list li {
		align-items: flex-start;
	}
}
@media (prefers-reduced-motion: reduce) {
	.section-worries * {
		transition: none !important;
	}
}

/* 特徴 */
.section-features {
	background: var(--bg-success);
}

.section-features .feature-block {
	background: var(--bg-normal);
	border: 1px solid rgba(0, 0, 0, 0.05);
	border-radius: var(--radius-md);
	box-shadow: 0 2px 6px rgba(0, 0, 0, 0.05);
	margin: 2rem auto;
	padding: 6rem;
	max-width: 100%;
}

.section-features .feature-block h3 {
	font-size: 2.4rem;
	font-weight: 600;
	margin-bottom: 1.5rem;
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 0.8rem;
	color: #333;
	border-bottom: 2px solid #545454;
	padding-bottom: 0.3em;
}

.section-features .feature-block h3 > span {
	font: inherit;
	font-size: 0.9em;
	font-weight: 700;
	background: #545454;
	color: #fff;
	padding: 0.25em 0.9em;
	border-radius: 999px;
	letter-spacing: 0.04em;
	line-height: 1.4;
	box-shadow: none;
	border: none;
}

.section-features .feature-block p,
.section-features .feature-block li {
	line-height: 1.8;
	margin-bottom: 2rem;
}

.section-features .feature-block ul {
	list-style: none;
	margin: 2rem 0;
	padding: 0;
}
.section-features .feature-block li {
	position: relative;
	padding-left: 2.2rem;
}
.section-features .feature-block li::before {
	content: "◉";
	position: absolute;
	left: 0;
	top: 0;
	color: #545454;
	font-weight: bold;
}

.section-features .feature-block img {
	border-radius: var(--radius-md);
	margin-top: 1rem;
	box-shadow: 0 2px 6px rgba(0, 0, 0, 0.05);
}
.feature-block img {
	max-width: 400px;
	width: 100%;
	display: block;
	margin: 0 auto;
}
@media screen and (max-width: 768px) {
	.section-features .feature-block {
		padding: 1.8rem;
	}
}

/* 流れ */
.section-flow {
	background: #fff;
}

.section-flow-step {
	background: #faf8f3;
	border: 1px solid #e2d9d1;
	padding: 2.5rem;
	margin: 0 auto 2.5rem;
	max-width: 860px;
	text-align: center;
	border-radius: 1rem;
	transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
}

.section-flow-step h3 {
	font-weight: 600;
	font-size: 2.2rem;
	margin-bottom: 1.5rem;
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 0.8rem;
	text-align: center;
	position: relative;
}

.section-flow-step h3::before {
	content: attr(data-step);
	display: inline-block;
	background: #545454;
	color: #fff;
	font-size: 0.9em;
	font-weight: 700;
	padding: 0.3em 0.9em;
	border-radius: 999px;
	line-height: 1.4;
	letter-spacing: 0.05em;
}

.section-flow-step p {
	line-height: 1.9;
	margin-bottom: 1.4rem;
}

.section-flow-step img {
	max-width: 100%;
	width: 100%;
	height: auto;
	border-radius: 0.6rem;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
	margin: 1rem auto;
	display: block;
}

.section-flow-step:hover,
.section-flow-step:focus-within {
	transform: translateY(-3px);
	box-shadow: 0 8px 20px rgba(0, 0, 0, 0.08);
	border-color: #c9bfb6;
}

.step-arrow {
	text-align: center;
}
.step-arrow img {
	max-width: 60px;
	margin: 1rem auto;
	opacity: 0.7;
}
.section-flow-step img {
	max-width: 400px;
	width: 100%;
}

@media screen and (max-width: 768px) {
	.section-flow-step {
		padding: 1.8rem;
	}
	.section-flow-step h3 {
		flex-direction: column;
		gap: 0.4rem;
	}
}

/* 料金 */
section.section-menu img {
	margin: 0 auto;
	display: block;
}
section.section-menu h2 + p {
	text-align: center;
}
.section-menu {
	--card-bg: #fff;
	--line: #e8e8e8;
	--accent: #f6f6ff;
	--head: #222;
	--sub: #666;
	--chip: #eef7ff;

	background: var(--bg-success);
}
.price-box {
	max-width: 600px;
	margin: 0 auto;
	width: 100%;
}

.section-menu .container {
	max-width: 960px;
	margin: 0 auto;
	padding: 0 1rem;
}

.section-menu h2 {
	color: var(--head);
	letter-spacing: 0.02em;
	margin: 0 0 1rem;
}

.section-menu h3 {
	margin: 2rem 0 0.75rem;
	position: relative;
	font-weight: 600;
}
.section-menu h3::after {
	content: "";
	display: block;
	height: 3px;
	max-width: 356px;
	width: 100%;
	background: #333;
	border-radius: 999px;
	margin-top: 0.4rem;
}

.section-menu h3 + ul {
	list-style: none;
	margin: 0 0 1.2rem;
	padding: 0;
	border-radius: 0.5rem;
	background: var(--card-bg);
}

.section-menu h3 + ul > li {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 0.8em 1em;
	border-bottom: 1px solid var(--line);
}
.section-menu h3 + ul > li:last-child {
	border-bottom: none;
}

.section-menu h3 + ul > li .price {
	font-variant-numeric: tabular-nums;
	white-space: nowrap;
}

.section-menu p + p:not(:has(img)),
.section-menu h3 + ul + p:not(:has(img)),
.section-menu .menu-notes {
	color: var(--sub);
	background: #ffffff;
	border-radius: 0.75rem;
	padding: 0.8em 1em;
	margin: 1em 0;
}

.menu-notes {
	background: none !important;
	margin-top: 0 !important;
	padding-top: 0 !important;
	font-size: 1.7rem;
}
ul.menu-notes li {
	list-style: disc;
	margin: 0.8em 1.8em !important;
	line-height: 1.5;
}

.section-menu img {
	margin: 0 auto;
	display: block;
}

@media (max-width: 768px) {
	.section-menu .container {
		padding: 0 0.75rem;
	}
	.section-menu h3 + ul > li {
		padding: 0.85em 0.9em;
	}
	.section-menu p + p:not(:has(img)),
	.section-menu h3 + ul + p:not(:has(img)),
	.section-menu .menu-notes {
		padding: 0;
	}
}

@media (hover: hover) {
	.section-menu h3 + ul > li:hover {
		background: #f7f7f7;
		transition: background 0.2s ease;
	}
}

/* メッセージ */
.owner-image {
	max-width: 400px;
	width: 100%;
}

/* よくあるお問い合わせ */
.faq-block dt,
.faq-block dd {
	position: relative;
	padding-left: 3em;
	margin-bottom: 1em;
	line-height: 1.8;
	margin-left: 0;
}
.faq-block dt {
	font-weight: 600;
}
.faq-block dd {
	margin-bottom: 3rem;
	border-bottom: 1px dotted #bebebe;
	padding-bottom: 2.2rem;
}
.faq-block dd:last-child {
	border-bottom: none;
}
.faq-icon {
	position: absolute;
	left: 0;
	top: 0.1em;
	width: 2em;
	height: 2em;
	line-height: 2em;
	text-align: center;
	border-radius: 4px;
	font-weight: bold;
	color: #fff;
	font-size: 0.9em;
	font-family: sans-serif;
}

.faq-icon.q {
	background-color: #333;
	border: 2px solid #333;
}

.faq-icon.a {
	background-color: #fff;
	border: 2px solid #333;
	color: #333;
}

section.section-hyponychium {
	background: #fff7e6;
}

/* サロン情報 事業者情報 */
section.section-saloninfo table,
.section-businessinfo table {
	margin: 0 auto;
}

/* フッター */
footer .copyright {
	background-color: #ececec;
}

/* レスポンシブ */
@media screen and (max-width: 768px) {
	h2 {
		font-size: 23px;
	}
	.pc {
		display: none;
	}
	.sp {
		display: block;
	}
	img {
		max-width: 100%;
		height: auto;
	}
	.mainimg img {
		max-width: 100%;
		height: auto;
		margin-bottom: -1rem;
	}
	.cta-img .pc {
		display: none;
	}
	.cta-img .sp {
		display: block;
		max-width: 100%;
	}
	.head-cta {
		align-items: center;
	}
	.section-cta-bottom-teltime {
		display: block;
	}
	img.teltime-img {
		max-width: 100%;
	}
	img.head-cta-logo {
		max-width: 140px;
	}
	.head-cta img.head-cta-tel-time {
		max-width: 200px;
		height: auto;
	}
	p.cta-top-note {
		max-width: 90%;
		line-height: 1.2;
	}
	.cta-top-note02 p {
		font-size: 14px;
		max-width: 90%;
		margin: 0 auto;
	}
	.favorite-button {
		background-color: #deedfc;
		color: #333;
		padding: 10px 15px;
		border-radius: 8px;
		text-align: center;
		cursor: pointer;
		font-size: 18px;
		border: 2px solid #aaccee;
		height: 60px;
		width: 250px;
		font-weight: bold;
		box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.2);
		transition: background-color 0.3s, transform 0.2s, box-shadow 0.2s;
	}

	/* ホバー時 */
	.favorite-button:hover {
		background-color: #cce5ff;
		box-shadow: 3px 3px 7px rgba(0, 0, 0, 0.3);
	}

	/* クリック時に少し縮む */
	.favorite-button:active {
		transform: scale(0.95);
		box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.2);
	}
	.instruction {
		display: none;
		background-color: #fff3cd;
		border: 1px solid #ffeeba;
		padding: 15px;
		margin-top: 10px;
		border-radius: 5px;
		position: relative;
		font-size: 16px;
	}
	.instruction li {
		list-style: square;
		line-height: 1.4;
		text-align: left;
	}
	.close-btn {
		position: absolute;
		top: 5px;
		right: 10px;
		background: red;
		color: white;
		border: none;
		padding: 5px 10px;
		cursor: pointer;
		border-radius: 5px;
		font-size: 12px;
	}

	section.section-conpany h2,
	section.sectionform h2 {
		font-size: 3rem;
	}
	section.section-conpany table {
		width: 100%;
		margin: 0 auto;
		font-size: 17px;
	}
	.section-conpany-img {
		display: block;
		max-width: 490px;
	}
	.section-conpany-img img {
		margin-bottom: 1rem;
	}
}
section.section-businessinfo {
	padding-top: 0;
	padding-bottom: 0;
}
section.section-businessinfo p {
	text-align: center;
	font-size: 1.6rem;
}
section.bottom-line img {
	margin: 0 auto;
	display: block;
	margin-bottom: 6rem;
}
