/* ベースの設定 */

html {
	box-sizing: border-box; /* ボックスモデルを統一するために、全ての要素に対してborder-boxを適用 */
	-webkit-text-size-adjust: 100%; /* iOSの向き変更時にフォントサイズの調整を防ぐ */
	word-break: normal; /* 単語の途中で改行しないように設定 */
	-moz-tab-size: 4; /* Firefoxのタブサイズを4に設定 */
	-o-tab-size: 4;
	tab-size: 4; /* タブの幅を4に設定 */
}

/* 全ての要素と擬似要素に適用 */

*,
::before,
::after {
	background-repeat: no-repeat; /* 全ての要素と擬似要素に背景の繰り返しを無効化 */
	box-sizing: inherit; /* box-sizingを親要素から引き継ぐ */
}

/* 擬似要素に対するスタイル */

::before,
::after {
	text-decoration: inherit; /* 擬似要素にテキストデコレーション（装飾）を親要素から引き継ぐ */
	vertical-align: inherit; /* 擬似要素の縦位置を親要素から引き継ぐ */
}

/* すべての要素に対して、パディングとマージンを0に設定 */

* {
	margin: 0;
	padding: 0;
}

/* <hr>（水平線）のスタイルを調整 */

hr {
	height: 0; /* Firefoxで高さが正しく表示されるように設定 */
	overflow: visible; /* EdgeとIEでオーバーフローを表示 */
}

/* <details> と <main> 要素をブロック要素として表示 */

details,
main {
	display: block;
}

/* <summary> 要素の表示をリストアイテムに設定 */

summary {
	display: list-item;
}

/* <small> 要素のフォントサイズを80%に設定 */

small {
	font-size: 80%;
}

/* [hidden] 属性を持つ要素は非表示に設定 */

[hidden] {
	display: none;
}

/* <abbr> 要素に title 属性がある場合のスタイル */

abbr[title] {
	border-bottom: none; /* Chrome 57でのボーダーを削除 */
	-webkit-text-decoration: underline dotted;
	text-decoration: underline dotted; /* 下線を追加（Chrome, Edge, IE, Opera, Safariで共通） */
}

/* フォントの見た目を初期化、リンクの背景色を透明に設定 */

a {
	background-color: transparent;
	color: inherit;
	text-decoration: none;
}

/* リンクがアクティブまたはホバー時にアウトラインを削除 */

a:active,
a:hover {
	outline-width: 0;
}

/* コード要素にモノスペースフォントを指定 */

code,
kbd,
pre,
samp {
	font-family: monospace, monospace;
}

/* <pre> 要素のフォントサイズを1emに設定 */

pre {
	font-size: 1em;
}

/* <b> と <strong> 要素のフォントウェイトを強調 */

b,
strong {
	font-weight: bolder;
}

/* <sub> と <sup> のスタイル調整 */

sub,
sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sub {
	bottom: -0.25em; /* <sub> 要素の位置を調整 */
}

sup {
	top: -0.5em; /* <sup> 要素の位置を調整 */
}

/* 入力フォームのボーダーを角丸にしない */

input {
	border-radius: 0;
}

/* 無効なフォーム要素にはデフォルトのカーソルを設定 */

[disabled] {
	cursor: default;
}

/* 数字入力フィールドのスピンボタンの高さを自動に設定 */

[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
	height: auto;
}

/* 検索フォームにおける奇妙な外観を修正 */

[type=search] {
	-webkit-appearance: textfield;
	outline-offset: -2px;
}

/* 検索フォームの装飾を削除 */

[type=search]::-webkit-search-decoration {
	-webkit-appearance: none;
}

/* テキストエリアのオーバーフローを自動に設定 */

textarea {
	overflow: auto;
	resize: vertical;
}

/* ボタン、入力、オプショングループ、選択肢、テキストエリアのフォントを親から継承 */

button,
input,
optgroup,
select,
textarea {
	font: inherit;
}

/* <optgroup> 要素のフォントウェイトを太字に設定 */

optgroup {
	font-weight: bold;
}

/* ボタンのオーバーフローを表示 */

button {
	overflow: visible;
}

/* ボタンと選択肢のテキストの大文字化を無効に設定 */

button,
select {
	text-transform: none;
}

/* ボタンにカーソルをポインターに設定 */

button,
[type=button],
[type=reset],
[type=submit],
[role=button] {
	color: inherit;
	cursor: pointer;
}

/* ボタンにおける内側のフォーカスを削除 */

button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
	border-style: none;
	padding: 0;
}

/* ボタンのフォーカス状態を修正 */

button:-moz-focusring,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
	outline: 1px dotted ButtonText;
}

/* ボタンや送信ボタンのWebkitバグを修正 */

button,
html [type=button],
[type=reset],
[type=submit] {
	-webkit-appearance: button;
}

/* ボタン、入力、選択肢、テキストエリアの背景色とボーダーを削除 */

button,
input,
select,
textarea {
	background-color: transparent;
	border-style: none;
}

/* セレクトボックスの外観をリセット */

select {
	-moz-appearance: none;
	-webkit-appearance: none;
}

select::-ms-expand {
	display: none;
}

/* セレクトボックスの選択値の色を現在のテキストカラーに設定 */

select::-ms-value {
	color: currentColor;
}

/* <legend> 要素の色を親要素から継承 */

legend {
	border: 0;
	color: inherit;
	display: table;
	max-width: 100%;
	max-width: 100%;
	white-space: normal;
}

/* ファイルアップロードボタンのスタイルを修正 */

::-webkit-file-upload-button {
	-webkit-appearance: button;
	color: inherit;
	font: inherit;
}

/* 画像のボーダーを削除 */

img {
	border-style: none;
}

/* <progress> 要素の縦位置を修正 */

progress {
	vertical-align: baseline;
}

/* SVGに色を適用 */

svg:not([fill]) {
	fill: currentColor;
}

/* 画面表示専用で隠す要素の設定 */

/* アクティブな要素のカーソルをプログレスに変更 */

[aria-busy=true] {
	cursor: progress;
}

/* コントロールされる要素のカーソルをポインターに変更 */

[aria-controls] {
	cursor: pointer;
}

/* 操作不可能な要素のカーソルをデフォルトに変更 */

[aria-disabled] {
	cursor: default;
}

/* リストスタイルを削除 */

ul,
ol {
	list-style: none;
}

/* 画像の縦位置をボトムに設定 */

img {
	vertical-align: bottom;
}

fieldset {
	border: none;
}

.l-header {
	align-items: center;
	display: flex;
	justify-content: space-between;
	padding: 1.375rem 9.375rem 1.375rem 9.375rem;
}

.l-header__menu {
	align-items: center;
	display: flex;
	height: 100%;
	position: relative;
}

.l-header__list:not(:first-child) {
	margin-left: 2.5rem;
}

.l-header__burger {
	z-index: 10;
}

.l-header__list {
	border-bottom: 1px solid transparent;
	transition: border 0.5s ease;

	&:hover {
		cursor: pointer;
		border-bottom: 1px solid black;
	}
}

.l-fv {
	background: linear-gradient(to bottom, #F8B819, #F0D320);
	border-radius: 30px;
	margin: 0 1.875rem;
	padding: 6.25rem 10vw;
	position: relative;
}

.l-case {
	margin: 9.375rem 0 9.375rem 0;
	max-width: 1440px;
}

.l-case__corp {
	display: flex;
	flex-wrap: wrap;
	margin: 3.125rem auto 0 auto;
	max-width: 920px;
}

.l-news {
	box-sizing: border-box;
	margin: 0 auto 9.375rem;
	max-width: 71.25rem;
	padding: 1.875rem 6.25rem;
}

.l-news__container {
	margin: 3.125rem auto;
	margin-top: 3.125rem;
	max-width: 58.125rem;
}

.l-news-item {
	align-items: center;
	display: flex;
	padding-bottom: 0.625rem;
}

.l-news-item:not(:first-child) {
	border-top: 1px solid #E3E3E3;
	padding-top: 0.625rem;
}

.l-news__header {
	display: flex;
	margin-right: 0.625rem;
	min-width: 15.4375rem;
}

.l-news__more {
	margin-top: 1.875rem;
	text-align: right;
}

.l-visual {
	text-align: center;
}

.l-visual__modal {
	display: none;
	inset: 0;
	padding: 8.125rem 4.375rem 5rem;
	position: relative;
	position: fixed;
	text-align: left;
	z-index: 999;
}

.l-visual__modal_cont {
	left: 50%;
	margin: 0 auto;
	padding: 9.375rem 3.125rem 6.25rem;
	position: absolute;
	top: 50%;
	transform: translate(-50%, -50%);
}

.l-visual__modal-btn {
	position: absolute;
	right: 4.6875rem;
	top: 3.125rem;
}

.l-visual__modal-text {
	line-height: 1.7;
	margin-bottom: 1.25rem;
}

.l-visual__modal-close {
	text-align: center;
}

.l-movie {
	margin-top: 12.5rem;
	padding: 5rem 0 6.25rem;
	text-align: center;
}

.l-movie__container {
	position: relative;
}

.l-use {
	padding: 6.25rem 9.375rem;
	text-align: center;
}

.l-use__container {
	padding: 3.125rem 7.5rem 4.375rem;
	position: relative;
}

.l-use__container:nth-child(4) {
	margin-top: 5.625rem;
}

.l-use__type {
	display: flex;
	justify-content: space-between;
	margin-top: 8.125rem;
	max-width: 71.25rem;
	width: 100%;
}

.l-use__type-cont {
	margin: 0 auto;
	margin-right: 1.5625rem;
	padding: 3.125rem 0rem 1.875rem;
	position: relative;
}

.l-use__type-cont:nth-child(3) {
	margin-right: 0px;
}

.l-use__step {
	left: 50%;
	position: absolute;
	top: -6%;
	transform: translate(-50%, 0%);
}

.l-merit {
	text-align: center;
}

.l-merit__container {
	margin: 0 auto 7.5rem;
	padding: 6.25rem clamp(2px, 10vw, 150px) 0rem;
}

.l-merit__description {
	display: flex;
	margin: 4.375rem auto 0rem;
	max-width: 71.25rem;
	padding: 1.25rem 6.875rem;
	width: 100%;
}

.l-merit__description:nth-child(4) {
	flex-direction: row-reverse;
	margin-top: 3.125rem;
}

.l-merit__description:nth-child(5) {
	margin-top: 3.125rem;
}

.l-merit__content {
	padding: 3.125rem 3.125rem 3.125rem 0rem;
	text-align: left;
}

.l-merit__items {
	align-items: center;
	display: flex;
}

.l-merit__dl {
	padding: 3.75rem 0;
}

.l-merit__compare {
	overflow-x: auto; /* 横スクロールを有効に */
	padding-bottom: 6.25rem;
	padding-top: 6.25rem;
	white-space: nowrap; /* 子要素を折り返さず横一列に並べる */
}

.l-merit__table {
	border-collapse: collapse;
	margin: 0 auto;
	max-width: 62.5rem;
	padding: 0 6.25rem;
	width: 100%;
}

.l-merit__table th,
.l-merit__table td {
	padding: 0 1.25rem;
	width: 25%;
}

.l-merit__compare::-webkit-scrollbar {
	background-color: #cdcdcd;
	border-radius: 100px;
	height: 9px;
}

.l-merit__compare::-webkit-scrollbar-thumb {
	background-color: #FABE00;
	border-radius: 4px;
}

.l-qa {
	padding: 6.25rem 1.25rem;
	text-align: center;
}

.l-qa__container {
	margin: 0 auto;
	margin-top: 2.5rem;
	padding: 1.875rem 3.125rem 1.25rem 1.25rem;
	position: relative;
	text-align: left;
}

.l-qa__container:nth-child(3) {
	margin-top: 4.375rem;
}

.l-gallery {
	margin-bottom: 7.5rem;
	margin-top: 6.25rem auto 7.5rem;
	overflow: hidden;
	padding-inline: 0.9375rem;
	text-align: center;
	width: 100%;
}

.l-gallery__slide {
	margin: 0 auto;
	padding: 0.9375rem 0.9375rem 3.75rem;
}

.l-contact {
	padding: 6.25rem 9.375rem;
	text-align: center;
}

.l-contact__form {
	margin: 0 auto;
	max-width: 71.25rem;
	padding: 4.375rem 1.875rem;
	width: 100%;
}

.l-contact__box {
	margin: 0 auto;
}

.l-contact__container {
	align-items: center;
	display: flex;
	margin-top: 2.1875rem;
	max-width: 71.25rem;
	white-space: nowrap;
	width: 100%;
}

.l-contact__container:first-child {
	margin-top: 3.125rem;
}

.l-contact__policy {
	margin-bottom: 2.1875rem;
	margin-top: 2.1875rem;
}

.l-contact__check {
	display: inline-flex;
	position: relative;
}

.l-footer {
	height: 3rem;
	position: relative;
	text-align: center;
	width: 100%;
	z-index: -1;
}

.c-header__logo {
	display: block;
	height: 2.1875rem;
	line-height: 1;
	width: 8.4375rem;
}

.c-header__inquire {
	background-color: #FFF;
	border: 2px solid;
	border-radius: 60px;
	padding: 0.625rem 1.875rem;
	text-align: center;
	transition: background-color 0.5s ease, border 0.5s ease, color 0.5s ease;
}

.c-header__inquire:hover {
	background-color: #FABE00;
}

.c-header__burger-btn {
	cursor: pointer;
}

.c-header__burger-btn.u-active .c-header__burger-line:nth-child(1) {
	transform: translateY(8px) translateX(25px) rotate(25deg); /* 1本目を斜めに */
}

.c-header__burger-btn.u-active .c-header__burger-line:nth-child(2) {
	opacity: 0; /* 2本目は非表示 */
}

.c-header__burger-btn.u-active .c-header__burger-line:nth-child(3) {
	transform: translateY(-10px) translateX(25px) rotate(-25deg); /* 3本目を逆さまに */
}

.c-fv__text {
	background-color: #FFF;
	display: inline-block;
	font-size: 2.375rem;
	font-weight: 700;
	padding: 0.3125rem 1.25rem 0.3125rem 0.3125rem;
}

.c-fv__text:nth-child(3) {
	margin-top: 0.9375rem;
	padding-right: 0.625rem;
}

.c-fv__description {
	font-size: 1.125rem;
	font-weight: 700;
	line-height: 1.7;
	margin-top: 1.875rem;
}

.c-fv__btn {
	background-color: #111;
	border: 2px solid #FFF;
	border-radius: 60px;
	color: #FFF;
	display: inline-block;
	font-weight: 700;
	margin-top: 1.875rem;
	padding: 0.625rem 1.875rem;

}

.c-fv__btn:hover {
	cursor: pointer;
	background-color: #FFF;
	border-color: #111;
	color: #111;
	transition: border-color 0.5s ease, color 0.5s ease, background-color 0.5s ease;
}

.c-fv__img {
	height: 37.5rem;
	position: absolute;
	right: 10vw;
	top: 5.625rem;
	width: 36.1875rem;
}

.c-case__title {
	font-size: 1.25rem;
	font-weight: 700;
	margin: 0 auto;
	text-align: center;
}

.c-case__corp {
	flex: 1 1 25%;
	text-align: center;
}

.c-news__title {
	font-family: "Montserrat", sans-serif;
	font-size: 3.125rem;
	max-width: 11.125rem;
}

.c_news__category1 {
	background-color: #F5810E;
}

.c_news__category2 {
	background-color: #F0D320;
}

.c_news__category3 {
	background-color: #389B47;
}

.c-news__headline {
	max-width: 42.6875rem;
}

.c-news__date {
	margin-right: 0.9375rem;
}

.c-news__headline {
	font-size: 1rem;
	font-weight: 400;
}

.c-news__more {
	border-bottom: 2px solid #111;
	display: inline-block;
	font-weight: 700;
	padding-bottom: 0.3125rem;
	text-align: right;
}

.c-news__more:hover {
	border-color: #FABE00;
	color: #FABE00;
}

.c-visual__img {
	height: 23.125rem;
	margin-top: 3.125rem;
	position: relative;
	width: 20.625rem;
}

.c-visual__mainText {
	margin: 0 auto;
	max-width: 43.125rem;
}

.c-visual__subtext {
	margin-top: 1.875rem;
	position: relative;
}

.c-visual__subtext::before {
	content: "＼ ";
}

.c-visual__subtext::after {
	content: "／";
}

.c-visual__story {
	background-color: #FFF;
	border: 2px solid #111;
	border-radius: 60px;
	margin-top: 0.625rem;
	padding: 0.3125rem 1.5625rem;
}

.c-visual__story:hover {
	background-color: #111;
	border-color: #FFF;
	color: #FFF;
	transition: border-color 0.5s ease, color 0.5s ease, background-color 0.5s ease;
}

.c-visual_modal__btn {
	background-color: #FABE00;
	border-radius: 50%;
	cursor: pointer;
	display: block;
	height: 37px;
	position: relative;
	width: 37px;
}

.c-visual_modal__btn::before {
	background-color: #FFF;
	content: "";
	height: 3px;
	left: 50%;
	position: absolute;
	top: 50%;
	transform: translate(-50%, -50%) rotate(45deg);
	width: 20px;
}

.c-visual_modal__btn::after {
	background-color: #FFF;
	content: "";
	height: 3px;
	left: 50%;
	position: absolute;
	top: 50%;
	transform: translate(-50%, -50%) rotate(135deg);
	width: 20px;
}

.c-visual__modal-close {
	background-color: #FFF;
	border: 2px solid #111;
	border-radius: 60px;
	font-weight: 700;
	margin: 0 auto;
	margin-top: 1.875rem;
	padding: 0.3125rem 3.125rem;
	text-align: center;
}

.c-visual__modal-close:hover {
	background-color: #111;
	color: #FFF;
	transition: background-color 0.5s ease, color 0.5s ease;
}

.c-visual__modal_cont {
	background-color: #FFF;
	border-radius: 20px;
	max-width: 71.25rem;
	max-width: 71.25rem;
	width: calc(100% - 100px);
}

.c-movie__img {
	cursor: pointer;
	margin-inline: 1.25rem;
	max-width: 46.75rem;
	width: calc(100% - 40px);
}

.c-movie_btn {
	background-color: #ff0000;
	border-radius: 10px;
	cursor: pointer;
	height: 2.625rem;
	left: 50%;
	position: absolute;
	top: 50%;
	transform: translate(-50%, -50%);
	width: 4.1875rem;
}

.c-movie_btn::after {
	border-bottom: 10px solid transparent;
	border-left: 20px solid #FFF;
	border-top: 10px solid transparent;
	content: "";
	left: 50%;
	position: absolute;
	top: 50%;
	transform: translate(-50%, -50%);
	z-index: 100;
}

.c-use_type-title {
	font-size: 1.375rem;
	left: 50%;
	max-width: 40.625rem;
	position: absolute;
	top: -5%;
	transform: translate(-50%, 0%);
	width: 100%;
}

.c-use__woman {
	height: 110px;
	width: 85px;
}

.c-use__stepNum {
	color: #FFF;
	font-family: "Montserrat", sans-serif;
	font-size: 2.125rem;
	font-weight: 700;
	left: 50%;
	letter-spacing: 0.1875rem;
	position: absolute;
	top: 2rem;
	transform: translate(-50%, 0%);
}

.c-use__stepNum::before {
	color: #111;
	content: "STEP";
	font-size: 0.8125rem;
	left: 50%;
	letter-spacing: 0.0625rem;
	position: absolute;
	top: -0.875rem;
	transform: translate(-50%, 0%);
}

.c-use__step,
.c-use__step2 {
	background-color: #F5810E;
	border: solid 3px #111;
	border-radius: 90px;
	height: 5.625rem;
	left: 50%;
	position: absolute;
	top: -3.125rem;
	transform: translate(-50%, 0%);
	width: 5.625rem;
}

.c-use__step2 {
	background-color: #FABE00;
}

.c-use__description {
	font-weight: 700;
	margin-top: 1.25rem;
}

.c-merit__num {
	color: #FABE00;
	font-family: "Montserrat", sans-serif;
	font-size: 6.875rem;
	font-weight: 600;
	margin-right: 1.5625rem;
}

.c-merit__summary {
	font-size: 1.25rem;
	line-height: 1.7;
}

.c-merit__detail {
	font-size: 0.9375rem;
	line-height: 2;
}

.c-merit__encourage {
	font-size: 1.125rem;
	font-weight: 700;
	line-height: 2;
	margin-bottom: 1.25rem;
}

.c-merit__btn {
	background-color: #FFF;
	border: solid 2px #111;
	border-radius: 60px;
	font-weight: 700;
	letter-spacing: 1.1px;
	padding: 0.625rem 1.875rem;
}

.c-merit__btn:hover {
	background-color: #111;
	border-color: #FFF;
	color: #FFF;
	transition: border-color 0.5s ease, color 0.5s ease, background-color 0.5s ease;
}

.c-merit__compare-title {
	font-size: 1.5rem;
	margin-bottom: 3.125rem;
}

.c-merit__logo {
	height: 2rem;
	width: 7.6875rem;
}

.c-merit__img {
	height: 100%;
	max-height: 21.875rem;
	max-width: 21.875rem;
	width: 100%;
}

.c-qa__question {
	font-weight: 700;
	letter-spacing: 1.5px;
	margin-bottom: 1.25rem;
	max-width: 43.75rem;
	position: relative;
}

.c-qa__question::before {
	background-color: #F5810E;
	border: solid 3px #111;
	border-radius: 22px;
	content: "Q";
	font-family: "Montserrat", sans-serif;
	font-size: 1.375rem;
	font-weight: 700;
	padding: 0.25rem 0.5625rem;
	position: absolute;
	top: -54px;
}

.c-qa__answer {
	display: none;
	font-weight: 700;
	max-width: 43.75rem;
	padding: 0.625rem 0.625rem 0.625rem 0rem;
	position: relative;
}

.c-qa__answer::before {
	background-color: #FABE00;
	border: solid 3px #111;
	border-radius: 22px;
	content: "A";
	font-family: "Montserrat", sans-serif;
	font-size: 1.375rem;
	font-weight: 700;
	margin-right: 0.625rem;
	padding: 0.25rem 0.5625rem;
	top: 0px;
}

.c-qa__btn {
	background: none;
	border: none;
	border-left: 6px solid transparent;
	border-right: 6px solid transparent;
	border-top: 8px solid #000; /* 下向き三角形 */
	cursor: pointer;
	height: 0;
	position: absolute;
	right: 20px;
	top: 45px;
	width: 0;
}

.c-qa__btn-active {
	background: none;
	border: none;
	border-bottom: 8px solid #000; /* 上向き三角形 */
	border-left: 6px solid transparent;
	border-right: 6px solid transparent;
	cursor: pointer;
	height: 0;
	position: absolute;
	right: 20px;
	top: 45px;
	width: 0;
}

.c-gallery_img {
	border-radius: 30px;
	height: auto;
	max-width: 100%;
}

.c-gallery__caption {
	margin-top: 1.25rem;
}

.c-gallery__prev {
	color: #FFF;
	cursor: pointer;
	font-size: 35px;
	font-weight: 700;
	height: 0;
	position: relative;
	z-index: 100;
}

.c-gallery__prev::before {
	border-radius: 60px;
	content: "<";
	left: -80px;
	position: absolute;
	top: -270px;
	z-index: 1;
}

.c-gallery__prev::after {
	background-color: #FABE00;
	border-radius: 60px;
	content: "";
	height: 3.125rem;
	left: -95px;
	position: absolute;
	top: -265px;
	width: 3.125rem;
	z-index: -1;
}

.c-gallery__next {
	color: #FFF;
	cursor: pointer;
	font-size: 35px;
	font-weight: 700;
	height: 0;
	position: relative;
	z-index: 100;
}

.c-gallery__next::before {
	border-radius: 60px;
	content: ">";
	position: absolute;
	right: -80px;
	top: -270px;
	z-index: 1;
}

.c-gallery__next::after {
	background-color: #FABE00;
	border-radius: 60px;
	content: "";
	height: 3.125rem;
	position: absolute;
	right: -95px;
	top: -265px;
	width: 3.125rem;
	z-index: -1;
}

.test {
	margin: auto;
	max-width: 600px;
	width: 100%;
}

.c-contact__label {
	display: inline-block;
	font-weight: 700;
	text-align: right;
	width: 140px;
}

.c-contact__required,
.c-contact__optional {
	background-color: #F5810E;
	border-radius: 2px;
	color: #FFF;
	display: inline-block;
	font-size: 0.6875rem;
	font-weight: 700;
	margin-left: 0.625rem;
	margin-right: 1.875rem;
	padding: 0.125rem 0.4375rem;
	vertical-align: 0.125rem;
}

.c-contact__optional {
	background-color: #43B549 !important;
}

.c-contact__required-adjust {
	height: 1.3125rem;
	margin-left: 0.9375rem;
	padding: 0.125rem 0.4375rem;
}

.c-contact__input,
.c-contact__inquire,
.c-contact__select {
	border: solid 3px #111;
	border-radius: 5px;
	cursor: pointer;
	height: 3.5rem;
	max-width: 24.375rem;
	padding-left: 0.9375rem;
	width: 100%;
}

.c-contact__select {
width: 24.375rem;
}

.c-contact__input:hover,
.c-contact__inquire:hover,
.c-contact__select:hover {
	border-color: #FABE00;
}

/* .c-contact__radio {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border: solid 3px #111 !important;
	border-radius: 50%;
	display: inline-block;
	height: 1.5rem;
	margin-left: 1.875rem;
	position: relative;
	vertical-align: bottom;
	width: 1.5rem;
} */


input[type="radio"] {
 -webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border: solid 3px #111 !important;
	border-radius: 50%;
	display: inline-block;
	height: 1.5rem;
	/* margin-left: 1.875rem; */
	position: relative;
	vertical-align: bottom;
	width: 1.5rem;
}

/* input[type="radio"] + .wpcf7-list-item-label {
 -webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border: solid 3px #111 !important;
	border-radius: 50%;
	display: inline-block;
	height: 1.5rem;
	margin-left: 1.875rem;
	position: relative;
	vertical-align: bottom;
	width: 1.5rem;
	margin-right: 65px;
} */

input[type="radio"]:checked::before {
	background-color: #F5810E;
	border-radius: 50%;
	content: "";
	height: 10px;
	left: 4px;
	position: absolute;
	top: 4px;
	width: 10px;
}

.first {
margin: 0;
}



.c-contact__radio-txt {
	font-weight: 700;
}

.c-contact__radio_adjust {
	margin-left: 0rem;
}

.c-contact__select {
	font-weight: 700;
	padding-left: 0.75rem;
	position: relative;
}

.c-contact__btn {
	display: inline;
	position: relative;
}

.c-contact__btn::after {
	background: none;
	border: none;
	border-left: 6px solid transparent;
	border-right: 6px solid transparent;
	border-top: 8px solid #000; /* 下向き三角形 */
	content: "";
	cursor: pointer;
	height: 0;
	position: absolute;
	right: 15px;
	top: -5px;
	width: 0;
}

.c-contact__inquire {
	height: 11.25rem;
	padding-top: 0.9375rem;
}

.c-contact__check {
	height: 1.25rem;
	left: 4%;
	opacity: 0;
	position: absolute;
	top: 4%;
	width: 1.25rem;
}

.c-contact__policy {
	font-size: 0.875rem;
	font-weight: 700;
	margin: 0 auto;
	padding-left: 2.5rem;
}

.c-contact__check:checked + p::after {
	opacity: 1;
	transition: all 0.3s ease 0s;
}

.c-contact__link {
	cursor: pointer;
	text-decoration: underline;
}

.c-contact__link:hover {
	color: #F5810E;
	text-decoration-color: #F5810E;
}

.c-contact__submit {
	background-color: #FFF;
	border: solid 2px #111;
	border-radius: 60px;
	cursor: pointer;
	font-weight: 700;
	letter-spacing: 1.1px;
	padding: 0.625rem 2.5rem;
}

.c-contact__submit:hover {
	background-color: #FABE00;
	transition: background-color 0.5s ease;
}

.c-contact__submit.is-disabled {
	background-color: #ccc;
	cursor: not-allowed;
	opacity: 0.6;
}

.c-footer__right {
	color: #FFF;
	left: 50%;
	max-width: 23.125rem;
	position: absolute;
	top: 50%;
	transform: translate(-50%, -50%);
	width: 100%;
}

.p-header__menu {
	font-weight: 700;
}

.p-header__logo {
	height: 2.1875rem;
}

.p-news {
	background-color: #FFF;
	border-radius: 30px;
}

.p-news__item:hover {
	background-color: #FFFBF0;
}

.p-visual__message {
	font-weight: 700;
	line-height: 230%;
	position: relative;
}

.p-visual__message::after {
	background: linear-gradient(to bottom, #F8B819, #F0D320);
	border-radius: 50%;
	content: "";
	height: 50rem;
	left: 50%;
	position: absolute;
	top: -15.625rem;
	transform: translate(-50%, 0%);
	width: 50rem;
	z-index: -1;
}

.p-visual__modal {
	background: rgba(0, 0, 0, 0.4);
	font-weight: 400;
}

.p-visual__modal-text {
	letter-spacing: 0.8px;
	line-height: 1.7;
}

.p-movie {
	background: url(../img/PC/section-bg.webp) repeat-x top/33.3333333333% auto;
}

.p-use {
	background-color: #FFF;
}

.p-use__type {
	background-color: #FFFBF0;
	border-radius: 40px;
}

.p-use__type-cont {
	background-color: #FFF;
	border: solid 3px #111;
	border-radius: 30px;
	width: 33%;
}

.p-merit__description {
	background-color: #FFF;
	border-radius: 20px;
}

.p-merit__dl {
	background: linear-gradient(to bottom, #F8B819, #F0D320);
}

.p-merit__table {
	height: 6.25rem;
}

.p-merit__table td {
	border-top: solid 1.5px #111;
}

.p-merit__compare {
	background-color: #FFF;
}

.p-merit__cell {
	background-color: #FFF9E5;
	font-size: 1.5625rem;
	font-weight: 700;
}

.p-merit__table-ttl {
	font-size: 1.25rem;
	font-weight: 700;
}

.p-merit__table-contents {
	font-weight: 700;
	line-height: 1.7;
}

.p-qa__container {
	background-color: #FFF;
	border: solid 3px #111;
	border-radius: 10px;
	max-width: 50rem;
}

.p-gallery__slide {
	border: solid 3px #111;
	border-radius: 30px;
	max-height: 24.8125rem;
	max-width: 37.5rem;
}

.p-contact {
	background: url(../img/PC/section-bg.webp) repeat top/33.3333333333% auto;
	width: 100%;
}

.p-contact__form {
	background-color: #FFF;
	border-radius: 30px;
	width: 100%;
}

.p-contact__box {
	max-width: 612px;
	width: 100%;
}

.p-footer {
	background-color: #111;
}

.u-width {
	background-color: #FAFAFA;
	margin: 0 auto;
	overflow-x: hidden;
	width: 100%;
}

.u-hide__pc {
	display: none;
}

.u_news__category {
	border-radius: 2px;
	color: #FFF;
	font-size: 0.6875rem;
	font-weight: 700;
	padding: 0.3125rem 0.625rem;
}

.u-title {
	font-family: "Montserrat", sans-serif;
	font-size: 3.125rem;
	margin-bottom: 0.625rem;
}

.u-subtitle {
	margin-bottom: 2.5rem;
}

.u-merit__cont-adjust {
	padding: 3.125rem 0rem 3.125rem 3.125rem;
}

.u-totop {
	bottom: 1.875rem;
	cursor: pointer;
	opacity: 1;
	position: fixed;
	right: 1.25rem;
	transition: opacity 0.4s ease, transform 0.4s ease;
}

.u-totop-hide {
	opacity: 0;
	pointer-events: none;
}

/*===================================================================
swiper
====================================================================*/

.swiper-container {
	position: relative;
}

.swiper-pagination-bullet-active {
	background-color: #FABE00;
}

.swiper-horizontal > .swiper-pagination-bullets,
.swiper-pagination-bullets.swiper-pagination-horizontal,
.swiper-pagination-custom,
.swiper-pagination-fraction {
	bottom: -35px;
}

.swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet,
.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
	margin: 5px;
}

.swiper-button-next,
.swiper-button-prev {
	display: none;
}

@media screen {

[hidden~=screen] {
	display: inherit;
}

[hidden~=screen]:not(:active):not(:focus):not(:target) {
	position: absolute !important;
	clip: rect(0 0 0 0) !important;
}

}

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

.l-header__menu {
	display: flex;
}

}

@media screen and (max-width: 1460px) {

.l-merit__container {
	padding-inline: 6.25rem;
}

}

@media screen and (max-width: 1370px) {

.l-merit__container {
	padding-inline: 4.375rem;
}

.l-merit__description {
	padding-inline: 4.375rem;
}

}

@media screen and (max-width: 1330px) {

.c-fv__img {
	height: 31.25rem;
	width: 29.9375rem;
}

}

@media screen and (max-width: 1200px) {

.l-fv {
	padding-left: 5vw;
	padding-right: 5vw;
}

.l-news {
	padding-left: 3.125rem;
	padding-right: 3.125rem;
	width: calc(100% - 60px);
}

.l-use {
	padding-inline: 5rem;
}

.l-use__container {
	padding-inline: 5rem;
}

.l-merit__container {
	padding-inline: 2.5rem;
}

.l-merit__description {
	padding-inline: 2.5rem;
}

.c-fv__img {
	right: 5vw;
}

.c-news__title {
	margin: auto;
}

}

@media screen and (max-width: 1150px) {

.l-visual__modal_cont {
	padding-inline: 1.875rem;
}

}

@media (max-width: 1100px) {

.l-header {
	padding: 1.375rem 4.375rem 1.375rem 4.375rem;
}

}

@media screen and (max-width: 1100px) {

.l-contact {
	padding-inline: 5rem;
}

}

@media screen and (max-width: 1080px) {

.c-fv__text {
	font-size: 1.875rem;
}

}

@media screen and (max-width: 1050px) {

.l-use {
	padding-inline: 3.125rem;
}

.l-use__container {
	padding-inline: 3.125rem;
}

}

@media screen and (max-width: 1000px) {

.l-merit__content {
	padding-right: 1.875rem;
	padding-top: 1.25rem;
}

.c-fv__img {
	height: 25rem;
	width: 23.4375rem;
}

.u-merit__cont-adjust {
	padding-left: 1.875rem;
}

}

@media screen and (max-width: 950px) {

.l-contact {
	padding-inline: 3.125rem;
}

}

@media (max-width: 900px) {

.l-header {
	padding: 1.375rem 3.125rem 1.375rem 3.125rem;
}

}

@media screen and (max-width: 900px) {

.l-header__list:not(:first-child) {
	margin-left: 1.25rem;
}

.l-use {
	padding-inline: 1.25rem;
}

.l-use__container {
	padding-inline: 1.25rem;
}

.l-merit__container {
	padding-inline: 1.25rem;
}

.l-merit__description {
	padding-inline: 1.25rem;
}

.l-merit__content {
	padding-right: 1.25rem;
}

.u-merit__cont-adjust {
	padding-left: 1.25rem;
}

}

@media screen and (max-width: 870px) {

.l-fv {
	padding-bottom: 15.625rem;
	padding-top: 3.125rem;
	text-align: center;
}

.c-fv__img {
	height: 20.8125rem;
	right: 50%;
	top: 68%;
	transform: translateX(50%);
	width: 21.5625rem;
}

}

@media screen and (max-width: 850px) {

.c-gallery__prev::before {
	left: 0px;
}

.c-gallery__prev::after {
	left: -15px;
}

.c-gallery__next::before {
	right: 0px;
}

.c-gallery__next::after {
	right: -15px;
}

}

@media screen and (max-width: 800px) {

.c-header__inquire {
	padding-left: 1.25rem;
	padding-right: 1.25rem;
}

}

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

.l-header__menu {
	display: none;
	height: 41.75rem;
	padding-right: 2.5rem;
	padding-top: 6.25rem;
	position: absolute;
	right: 0px;
	text-align: right;
	top: 0px;
	width: 20rem;
	z-index: -1;
}

.l-header__list {
	margin-bottom: 1.875rem;
}

.l-use__container {
	margin-top: 6.25rem;
	padding-top: 5rem;
}

.l-use__type {
	align-items: center;
	flex-direction: column;
	justify-content: center;
	margin-top: 5rem;
}

.l-use__type-cont {
	margin: 0px;
}

.l-use__type-cont:not(:first-child) {
	margin-top: 4.375rem;
}

.l-merit__description {
	align-items: center;
	flex-direction: column-reverse;
}

.l-merit__description:nth-child(4) {
	flex-direction: column-reverse;
	margin-top: 3.125rem;
}

.l-merit__content {
	padding-bottom: 1.875rem;
	padding-right: 0rem;
	padding-top: 0rem;
}

.l-contact {
	padding-inline: 1.875rem;
}

.l-contact__container {
	display: block;
	margin: 2.1875rem auto 0rem;
	max-width: 24.375rem;
	text-align: left;
}

.l-contact__radio {
	display: flex;
	margin-top: 0.9375rem;
}

.c-header__logo {
	height: 1.625rem;
	width: 6.25rem;
}

.c-header__inquire {
	display: inline-block;
	margin-left: auto;
	width: 9.375rem;
}

.c-header__inquire:hover {
	background-color: #111;
	color: #FFF;
}

.c-header__burger-line {
	background-color: #111;
	cursor: pointer;
	display: block;
	height: 0.1875rem;
	margin: 6px 0;
	transition: all 0.3s ease;
	width: 2.25rem;
}

.c-visual__modal_cont {
	font-size: 0.875rem;
	width: calc(100% - 50px);
}

.c-movie_btn {
	height: 6vw;
	width: 10vw;
}

.c-use_type-title {
	position: relative;
}

.c-use__woman {
	left: 50%;
	position: absolute;
	top: -140px;
	transform: translateX(-50%);
}

.c-merit__summary {
	font-size: 1rem;
}

.c-merit__encourage {
	font-size: 1rem;
}

.c-contact__label {
	display: inline;
	width: 100%;
}

.c-contact__input,
.c-contact__inquire,
.c-contact__select {
	display: block;
	margin: 0.625rem auto 0rem;
}

.c-contact__radio {
	display: block;
	margin-left: 0px;
	margin-right: 0.625rem;
}

.c-contact__btn {
	display: block;
	max-width: 24.375rem;
	width: 100%;
}

.c-contact__btn::after {
	top: -30px;
}

.c-contact__select {
width: 100%;
}

.p-header__menu {
	background-color: #F7BA1A;
}

.p-header__logo {
	height: 1.625rem;
}

.p-use__type-cont {
	max-width: 16.5625rem;
	width: 100%;
}

.u-merit__cont-adjust {
	padding-left: 0rem;
}

.u-totop {
	bottom: 0.625rem;
	height: 3.8125rem;
	right: 0.625rem;
	width: 3.125rem;
}

.u-totop-img {
	height: 3.8125rem;
	width: 3.125rem;
}

}

@media screen and (max-width: 700px) {

.l-news-item {
	display: block;
}

.l-news__header {
	margin-bottom: 0.625rem;
	margin-top: 0.3125rem;
}

.c-news__headline {
	margin-bottom: 0.3125rem;
}

}

@media screen and (max-width: 650px) {

.l-visual__modal {
	padding: 5rem 1.875rem;
}

.l-visual__modal_cont {
	padding-block: 5rem;
}

.l-visual__modal-btn {
	right: 1.875rem;
	top: 0.625rem;
}

}

@media screen and (max-width: 600px) {

.p-visual__message::after {
	height: 71.875rem;
	width: 71.875rem;
}

.u-hide__pc {
	display: block;
}

}

@media screen and (max-width: 550px) {

.c-movie_btn {
	border-radius: 8px;
}

.c-movie_btn::after {
	border-bottom: 7px solid transparent;
	border-left: 13px solid #FFF;
	border-top: 7px solid transparent;
}

}

@media (max-width: 500px) {

.l-header {
	padding: 1.375rem 1.875rem 1.375rem 1.875rem;
}

}

@media screen and (max-width: 500px) {

.l-fv {
	margin-inline: 0.9375rem;
}

.l-news {
	padding-left: 1.25rem;
	padding-right: 1.25rem;
	width: calc(100% - 40px);
}

.l-gallery__slide {
	padding: 0.625rem 0.625rem 1.5625rem;
}

.c-fv__text {
	font-size: 1.375rem;
}

.c-fv__description {
	font-size: 1rem;
}

.c-gallery__prev::before {
	font-size: 1.5625rem;
	left: 8px;
	top: -235px;
}

.c-gallery__prev::after {
	height: 1.875rem;
	left: 0px;
	top: -230px;
	width: 1.875rem;
}

.c-gallery__next::before {
	font-size: 1.5625rem;
	right: 8px;
	top: -235px;
}

.c-gallery__next::after {
	height: 1.875rem;
	right: 0px;
	top: -230px;
	width: 1.875rem;
}

.u-title {
	font-size: 2.375rem;
}

}

@media screen and (max-width: 460px) {
.wpcf7-list-item {
	display: block;
	margin-left: 0;
	margin-top: 10px;
}
}

@media screen and (max-width: 450px) {

.c-case__corp {
	flex: 1 1 50%;
}

.c-case__img {
	max-width: 12.5rem;
	width: 100%;
}

.c-gallery__prev::before {
	top: -205px;
}

.c-gallery__prev::after {
	top: -200px;
}

.c-gallery__next::before {
	top: -205px;
}

.c-gallery__next::after {
	top: -200px;
}

}

@media screen and (max-width: 430px) {

.l-qa {
	padding-inline: 0.625rem;
}

.l-qa__container {
	padding-left: 0.9375rem;
	padding-right: 2.5rem;
}

.c-qa__question {
	font-size: 0.875rem;
}

.c-qa__answer {
	font-size: 0.875rem;
}

}

@media screen and (max-width: 420px) {

.l-visual__modal {
	padding-inline: 0.625rem;
}

.l-visual__modal_cont {
	padding: 3.75rem 0.9375rem 1.875rem;
}

.l-contact {
	padding-inline: 0.9375rem;
}

.c-visual__modal_cont {
	width: calc(100% - 30px);
}

}

@media screen and (max-width: 390px) {

.l-contact__form {
	padding-inline: 1.25rem;
}

}

@media screen and (max-width: 380px) {

.c-visual__img {
	height: 21.25rem;
	width: 18.75rem;
}

.c-visual__mainText {
	font-size: 0.875rem;
}

.c-movie_btn {
	border-radius: 6px;
}

.c-movie_btn::after {
	border-bottom: 6px solid transparent;
	border-left: 12px solid #FFF;
	border-top: 6px solid transparent;
}

}

.wpcf7-spinner {
	display:none;
}

.wpcf7-not-valid-tip{
	text-align:left;
}

.u-check{
	display:none;
}

.l-case {
	margin: 9.375rem auto;
}

.l-use__type {
	margin: 8.125rem auto 0;
}

.c-contact__check + .wpcf7-list-item-label{
position:relative;

	  &::before {
    background-color: #FFF;
	border: 1px solid #111;
	border-radius: 3px;
	content: "";
	height: 1.25rem;
	left: -14%;
	position: absolute;
	top: -20%;
	width: 1.25rem;
  }

  &::after {
    color: #F5810E;
	content: "✔";
	font-size: 1.5625rem;
	left: -14%;
	opacity: 0;
	position: absolute;
	top: -75%;
  }
}

.c-contact__check:checked + .wpcf7-list-item-label::after {
    opacity: 1;
    transition: all 0.3s ease 0s;
}

.c-contact__submit:disabled {
  
	&:hover {
		  background-color: #ccc;
  opacity: 0.6;
  cursor: not-allowed;
	}
}
