body {
	font-family: "Noto Sans JP";
	opacity: 0;
	transition: opacity 1.5s ease-in-out;
}

body.loaded {
	opacity: 1;
}

.u-desktop {
	display: none;
}

/* リキッドレイアウト対応 */

html {
	font-size: 16px;
}

*,
*::before,
*::after {
	box-sizing: border-box;
}

/* Remove default padding */

ul,
ol {
	padding: 0;
}

/* Remove default margin */

body,
h1,
h2,
h3,
h4,
p,
ul,
ol,
figure,
blockquote,
dl,
dd {
	margin: 0;
}

/* Set core root defaults */

html {
	scroll-behavior: smooth;
}

/* Set core body defaults */

body {
	line-height: 1.5;
	min-height: 100vh;
	text-rendering: optimizeLegibility;
}

/* Remove list styles on ul, ol elements with a class attribute */

ul,
ol {
	list-style: none;
}

/* A elements that don't have a class get default styles */

a:not([class]) {
	-webkit-text-decoration-skip: ink;
	text-decoration-skip-ink: auto;
}

/* Make images easier to work with */

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

/* Natural flow and rhythm in articles by default */

article > * + * {
	margin-top: 1em;
}

/* Inherit fonts for inputs and buttons */

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

/* Blur images when they have no alt attribute */

img:not([alt]) {
	filter: blur(10px);
}

/* フォームリセット */

input,
button,
select,
textarea {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	background: transparent;
	border: none;
	border-radius: 0;
	font: inherit;
	outline: none;
}

textarea {
	resize: vertical;
}

input[type=checkbox],
input[type=radio] {
	display: none;
}

input[type=submit],
input[type=button],
label,
button,
select {
	cursor: pointer;
}

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

/* ホバー */

a {
	-webkit-text-decoration: none;
	color: inherit;
	text-decoration: none;
	transition: opacity 0.3s;
}

.company__overview {
	background-color: #f1f1f1;
	padding-bottom: 3.625rem;
	padding-top: 2.8125rem;
	position: relative;
}

.company__icon {
	margin: 0 auto;
	width: 0.8125rem;
}

.company__contents {
	text-align: center;
	width: 100%;
}

.company__title {
	color: #555;
	display: inline-block;
	font-size: 1.375rem;
	font-weight: 700;
	margin-top: 1.125rem;
	position: relative;
	text-align: center;
}

.company__list:before,
.company__list:after {
	background-color: #666;
	content: "";
	height: 0.0625rem;
	position: absolute;
	top: -15%;
	width: 31%;
}

.company__list:before {
	left: 1.25rem;
}

.company__list:after {
	right: 1.25rem;
}

.company__list {
	margin-left: auto;
	margin-right: auto;
	margin-top: 3.25rem;
	max-width: 38.75rem;
	padding-left: 1.25rem;
	padding-right: 1.25rem;
	position: relative;
	text-align: left;
}

.company__list-item {
	border-bottom: 0.0625rem solid #333;
	color: #333;
	display: flex;
	font-size: 0.875rem;
	font-weight: 500;
	padding-bottom: 0.9375rem;
	padding-top: 0.9375rem;
}

.company__item-title {
	width: 30%;
}

.company__item-content {
	width: 70%;
}

.fee__title-wrap {
	background-color: #9d2a31;
	height: 3.5rem;
	position: relative;
}

.fee__icon {
	margin: 0 auto;
	width: 2.625rem;
	z-index: 10;
}

.fee__icon-background {
	left: 50%;
	position: absolute;
	top: 50%;
	transform: translate(-50%, -50%);
	width: 6rem;
	z-index: -2;
}

.fee__title {
	align-items: flex-end;
	color: #fff;
	font-size: 1.375rem;
	font-style: normal;
	font-weight: 700;
	line-height: normal;
	transform: translateY(-60px);
}

.fee__contents {
	position: relative;
	width: 100%;
	z-index: -3;
}

.fee__background {
	background-image: url(../../assets/images/common/fee-bg.webp);
	background-repeat: no-repeat;
	max-width: 1440px;
	width: 100%;
}

.fee__content {
	padding-bottom: 2.375rem;
	padding-top: 3.125rem;
}

.fee__text {
	color: #000;
	font-size: 1.25rem;
	font-weight: 700;
	line-height: 170%; /* 34px */
	text-align: center;
}

.fee__cards {
	align-items: center;
	display: flex;
	flex-direction: column;
	gap: 2rem;
	justify-content: center;
}

.fee__card {
	margin-top: 2rem;
}

.footer {
	background-color: #9d2a31;
	color: #fff;
	padding-bottom: 0.625rem;
	padding-top: 2.3125rem;
	position: relative;
	z-index: 10;
}

.footer__logo-wrap {
	margin-top: 3.4375rem;
	text-align: center;
}

.footer__logo-box {
	display: flex;
	height: inherit;
	justify-content: center;
	margin-top: 0.75rem;
}

.footer__logo {
	height: 1.5rem;
	width: 2.375rem;
}

.footer__text {
	font-size: 0.75rem;
	font-weight: 700;
	line-height: 130%; /* 16.649px */
}

.footer__text {
	align-items: center;
	display: flex;
	justify-content: center;
	text-transform: uppercase;
}

.footer__text::before,
.footer__text::after {
	background: #fff;
	content: "";
	height: 2.5rem;
	width: 0.125rem;
}

.footer__text::before {
	margin-right: 0.9375rem;
	transform: rotate(-30deg);
}

.footer__text::after {
	margin-left: 0.9375rem;
	transform: rotate(30deg);
}

.footer__text-ruby {
	align-items: flex-end;
	display: flex;
}

.footer__title {
	font-size: 1.75rem;
	font-weight: 700;
	letter-spacing: 2.3px;
	line-height: normal;
}

.footer__address {
	font-size: 0.875rem;
	font-weight: 500;
	letter-spacing: 0.72px;
	margin-top: 1.125rem;
}

.footer__content {
	display: flex;
	flex-direction: column-reverse;
}

.footer__nav {
	display: flex;
	flex-direction: column-reverse;
}

.footer__nav-items {
	align-items: center;
	display: flex;
	flex-direction: column;
	gap: 1.5rem;
	margin-top: 2rem;
	width: 100%;
}

.footer__info {
	font-size: 0.75rem;
	font-weight: 400;
	letter-spacing: 0.6px;
	margin-top: 4.25rem;
	text-align: center;
}

.header {
	background-color: #9d2a31;
	color: #fff;
	height: 5rem;
	position: fixed;
	width: 100%;
	z-index: 100;
}

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

.header__logo-box {
	display: flex;
	height: inherit;
}

.header__logo {
	height: 1.5rem;
	width: 2.375rem;
}

.header__text {
	align-items: flex-end;
	display: flex;
}

.header__title {
	font-size: 1.375rem;
	font-weight: 700;
	letter-spacing: 2.3px;
	line-height: normal;
}

.header__nav {
	display: flex;
	height: inherit;
}

.info__title-wrap {
	text-align: center;
}

.info__title {
	display: inline-block;
	font-size: 1.125rem;
	font-weight: 600;
	padding-bottom: 1.5rem;
	padding-left: 3.75rem;
	padding-right: 3.75rem;
	padding-top: 1.5rem;
	position: relative;
	text-align: center;
}

.info__title:before,
.info__title:after {
	background-color: black;
	content: "";
	display: inline-block;
	height: 2px;
	position: absolute;
	top: 50%;
	width: 45px;
}

.info__title:before {
	left: 0;
}

.info__title:after {
	right: 0;
}

/* 親要素に対してテキストの中央揃えを適用 */

.info__img-hyousiki,
.info__img-yakkan {
	text-align: center;
}

/* 画像をブロック要素として扱い、左右のマージンを自動に設定 */

.info__img-hyousiki img,
.info__img-yakkan img {
	display: block;
	margin-left: auto;
	margin-right: auto;
}

.info__img-hyousiki img {
	-o-object-fit: cover;
	aspect-ratio: 861/456;
	height: auto;
	max-width: 53.8125rem;
	object-fit: cover;
	width: 100%;
}

.info__img-yakkan img {
	-o-object-fit: cover;
	aspect-ratio: 670/830;
	height: auto;
	max-width: 41.875rem;
	object-fit: cover;
	width: 100%;
}

.mv {
	padding-top: 4.375rem;
}

.mv__inner {
	position: relative;
}

.mv__img {
	display: flex;
	flex-direction: column;
	height: 31.875rem;
	overflow: hidden;
	width: 100%;
}

.mv__img-left {
	-o-object-fit: cover;
	height: 41%;
	object-fit: cover;
	width: 100%;
}

.mv__img-right {
	-o-object-fit: cover;
	height: 65%;
	object-fit: cover;
	width: 100%;
}

.mv__title-wrap {
	left: 0;
	margin-left: 0.5rem;
	margin-right: 0.5rem;
	position: absolute;
	right: 0;
	top: 3.75rem;
}

.mv__sub-title {
	font-size: 1.125rem;
	font-style: italic;
	font-weight: 700;
	letter-spacing: 1.172px;
	line-height: 150%; /* 29.296px */
	text-align: center;
}

.mv__main-title {
	margin-top: 1.25rem;
	text-align: center;
}

.mv__title--red {
	color: #e7505a;
	font-size: 2.75rem;
	font-style: italic;
	font-weight: 700;
	line-height: 130%; /* 58.155px */
}

.mv__title--black {
	color: #333;
	font-size: 2.75rem;
	font-style: italic;
	font-weight: 700;
	line-height: 130%;
}

.mv__text-wrap {
	background-color: #fff;
	border-radius: 0.9375rem;
	box-shadow: 4px 4px 30px 0px rgba(0, 0, 0, 0.05);
	display: flex;
	justify-content: space-around;
	margin-top: 5rem;
	padding-bottom: 1.25rem;
	padding-top: 1.25rem;
	width: 100%;
}

.mv__text-item--flex {
	display: flex;
}

.mv__text-sb {
	background-color: #f5a815;
	border-radius: 50%;
	color: #fff;
	font-family: "Open Sans";
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.629px;
	line-height: 110%; /* 13.838px */
	margin-right: 0.625rem;
	padding: 0.9375rem;
	position: relative;
	text-align: center;
}

.mv__text-sb:after {
	-webkit-clip-path: polygon(34% 0, 0 46%, 100% 67%);
	background-color: #f5a815;
	border: solid transparent;
	clip-path: polygon(34% 0, 0 46%, 100% 67%);
	content: "";
	height: 1.875rem;
	left: 2.5625rem;
	position: absolute;
	top: 1.625rem;
	width: 1.4375rem;
}

.mv__text-sb--small {
	font-size: 0.625rem;
}

.mv__text-price--black {
	font-size: 1rem;
	font-weight: 700;
	letter-spacing: 0.839px;
}

.mv__text-price--blue {
	color: #05204b;
	font-family: "Open Sans";
	font-size: 1.5rem;
}

.mv__text-price--small {
	color: #05204b;
	font-size: 0.75rem;
}

.mv__text-blue {
	color: #05204b;
	font-size: 1rem;
	font-weight: 700;
	line-height: 140%; /* 23.483px */
	text-align: center;
}

.mv__text-black {
	color: #333;
	font-size: 1rem;
	font-weight: 700;
	line-height: 140%;
}

.news {
	padding-bottom: 2.5rem;
	padding-top: 2.5rem;
}

.news__title-wrap {
	border: 1px solid #c8000b;
	margin-left: auto;
	margin-right: auto;
	max-width: 37.5rem;
	text-align: center;
}

.news__title {
	background-color: #c8000b;
	color: #fff;
	font-size: 1.125rem;
	font-weight: 700;
	line-height: 140%; /* 25.2px */
	padding-bottom: 0.625rem;
	padding-top: 0.625rem;
}

.news__text {
	font-size: 0.875rem;
	font-weight: 500;
	letter-spacing: 0.42px;
	line-height: 170%; /* 23.8px */
	padding: 1.5rem;
	text-align: left;
}

.news__text span {
	display: flex;
	justify-content: center;
}

.service {
	background-image: url(../../assets/images/common/guide-bg.webp);
	background-repeat: no-repeat;
	position: relative;
	z-index: -5;
}

.service__background {
	fill: #fff;
	background-color: #fff;
	filter: drop-shadow(0px 0px 70px rgba(21, 52, 60, 0.08));
	padding-bottom: 3.125rem;
	padding-top: 5rem;
	width: 100%;
}

.service__icon {
	margin: 0 auto;
	width: 2rem;
}

.service__title {
	color: #555;
	font-size: 1.375rem;
	font-weight: 700;
	text-align: center;
}

.service__items {
	margin-top: 2.25rem;
}

.works {
	background-image: url(../../assets/images/common/works-bg.webp);
	padding-bottom: 3.75rem;
	padding-top: 3.75rem;
}

.btn {
	background: linear-gradient(271deg, #fab110 0.3%, #e68d24 150.48%);
	border-radius: 12px;
	color: #fff;
	display: inline-block;
	font-size: 1.5rem;
	letter-spacing: 0.1em;
	line-height: 1;
	margin-top: 1.25rem;
	padding: 1.125rem 4.5rem;
	position: relative;
	text-transform: uppercase;
}

.btn::before {
	border-color: transparent transparent transparent #fff;
	border-style: solid;
	border-width: 0.5rem 0 0.5rem 0.5rem;
	content: "";
	display: inline-block;
	height: 0;
	position: absolute;
	right: 20px;
	top: 50%;
	transform: translateY(-50%);
	width: 0;
}

.call {
	background-color: #9d2a31;
	padding-bottom: 3.4375rem;
	padding-top: 3.125rem;
	text-align: center;
}

.call__title {
	align-items: center;
	display: inline-flex;
}

.call__icon {
	height: 0.9375rem;
	width: 0.9375rem;
}

.call__text {
	-webkit-text-decoration: underline;
	color: #fff;
	font-size: 0.875rem;
	font-weight: 700;
	text-decoration: underline;
	text-underline-offset: 0.5rem;
}

.card {
	max-width: 21.25rem;
	width: 100%;
}

.card__title-box--blue {
	background: #05204b;
	border-radius: 30px 30px 0px 0px;
	box-shadow: 0px 0px 70px 0px rgba(21, 52, 60, 0.08);
	color: #fff;
	text-align: center;
}

.card__title-box--yellow {
	background: #f5a815;
	border-radius: 30px 30px 0px 0px;
	box-shadow: 0px 0px 70px 0px rgba(21, 52, 60, 0.08);
	color: #fff;
	text-align: center;
}

.card__title {
	font-size: 2.5rem;
	font-style: normal;
	font-weight: 700;
	letter-spacing: 2px;
	line-height: normal;
}

.card__title--small {
	font-size: 1.625rem;
	font-style: normal;
	font-weight: 700;
	letter-spacing: 1.3px;
	line-height: normal;
}

.card__subtitle {
	font-family: "Open Sans";
	font-size: 1.5rem;
	font-style: normal;
	font-weight: 700;
	letter-spacing: 1.329px;
	line-height: normal;
}

.card__subtitle--large {
	font-family: "Open Sans";
	font-size: 2.5rem;
	font-style: normal;
	font-weight: 700;
	letter-spacing: 2px;
	line-height: normal;
}

.card__subtitle--small {
	font-family: "Noto Sans JP";
	font-size: 1.8125rem;
	font-weight: 700;
	letter-spacing: 1.495px;
}

.card__subtitle--tiny {
	font-family: "Noto Sans JP";
	font-size: 1.625rem;
	font-weight: 700;
	letter-spacing: 1.3px;
}

.card__price-box {
	background: #fff;
	border-radius: 0px 0px 30px 30px;
	box-shadow: 0px 0px 70px 0px rgba(21, 52, 60, 0.08);
	margin-top: 0.5rem;
	padding-bottom: 6.25rem;
	padding-top: 6.25rem;
	text-align: center;
}

.card__price {
	font-family: "Open Sans";
	font-size: 3.375rem;
	font-style: normal;
	font-weight: 700;
	line-height: normal;
}

.card__price-small {
	font-family: "Noto Sans JP";
	font-size: 1.625rem;
	font-style: normal;
	font-weight: 700;
	line-height: normal;
}

.fadeInUp {
	opacity: 0;
	transform: translateY(20px);
	transition: opacity 0.9s, transform 0.9s;
	visibility: hidden;
}

.fadeInUp.is-visible {
	opacity: 1;
	transform: translateY(0);
	visibility: visible;
}

.fee__title-line {
	align-items: center;
	display: flex;
	justify-content: center;
	text-transform: uppercase;
}

.fee__title-line::before,
.fee__title-line::after {
	background: #fff;
	content: "";
	height: 2.5rem;
	width: 0.125rem;
}

.fee__title-line::before {
	margin-right: 0.625rem;
	transform: rotate(-30deg);
}

.fee__title-line::after {
	margin-left: 0.625rem;
	transform: rotate(30deg);
}

.fee__outer-line::before {
	height: 1.25rem;
	margin-top: 1.875rem;
	transform: rotate(-42deg);
}

.fee__outer-line::after {
	height: 1.25rem;
	margin-top: 1.875rem;
	transform: rotate(42deg);
}

.footer-nav__item-column {
	display: flex;
	flex-direction: column;
	text-align: center;
	white-space: nowrap;
}

.footer-nav__item-time {
	display: flex;
	gap: 0.625rem;
	margin-left: auto;
	margin-right: auto;
	margin-top: 2rem;
}

.footer-nav__tel-text {
	font-size: 0.875rem;
	font-weight: 500;
}

.footer-nav__tel {
	color: #fff616;
	font-family: "Open Sans";
	font-size: 1.125rem;
	font-style: normal;
	font-weight: 700;
	letter-spacing: 1.44px;
	line-height: normal;
}

.footer-nav__banner {
	margin-left: auto;
	margin-right: auto;
	margin-top: 1.25rem;
	max-width: 20rem;
}

.footer-nav__banner img {
	-o-object-fit: cover;
	aspect-ratio: 234/60;
	height: auto;
	object-fit: cover;
}

.inner {
	margin-left: auto;
	margin-right: auto;
	padding-left: 20px;
	padding-right: 20px;
	width: 100%;
}

.line {
	padding-bottom: 5px;
	position: relative;
}

.line::before {
	background: #fff;
	bottom: 0;
	content: "";
	height: 2px;
	left: 0;
	margin: auto;
	position: absolute;
	transform: scale(0, 1);
	transform-origin: center top;
	transition: transform 0.3s;
	width: 100%;
}

.line:hover::before {
	transform: scale(1, 1);
	transform-origin: center top;
}

.line__tel {
	padding-bottom: 5px;
	position: relative;
}

.line__tel::before {
	background: #fff616;
	bottom: 0;
	content: "";
	height: 2px;
	left: 0;
	margin: auto;
	position: absolute;
	transform: scale(0, 1);
	transform-origin: center top;
	transition: transform 0.3s;
	width: 100%;
}

.line__tel:hover::before {
	transform: scale(1, 1);
	transform-origin: center top;
}

.nav__items {
	align-items: center;
	display: flex;
	width: 100%;
}

.nav__item-column {
	display: flex;
	flex-direction: column;
	text-align: center;
	white-space: nowrap;
}

.nav__item-time {
	display: flex;
	gap: 0.625rem;
	margin-left: auto;
	margin-right: auto;
	margin-top: 2rem;
}

.nav__tel-text {
	font-size: 0.875rem;
	font-weight: 500;
}

.nav__tel {
	color: #fff616;
	font-family: "Open Sans";
	font-size: 1.125rem;
	font-style: normal;
	font-weight: 700;
	letter-spacing: 1.44px;
	line-height: normal;
}

#scrollTopBtn {
	bottom: 20px;
	cursor: pointer;
	display: none; /* 初期状態では非表示 */
	font-size: 16px;
	padding: 10px 20px;
	position: fixed;
	right: 30px;
	z-index: 1000;
}

.step__box {
	display: flex;
	position: relative;
	z-index: 10;
}

.step:nth-of-type(2) .step__box {
	transform: translateY(-33px);
	z-index: 3;
}

.step:nth-of-type(3) .step__box {
	transform: translateY(-66px);
	z-index: 2;
}

.step:nth-of-type(4) .step__box {
	transform: translateY(-99px);
	z-index: 1;
}

.step__item {
	background-color: #f5a815;
	color: #fff;
	font-family: Montserrat;
	font-size: 1.125rem;
	font-weight: 700;
	margin-left: 1.25rem;
	padding-bottom: 5rem;
	padding-left: 0.625rem;
	padding-right: 0.625rem;
	padding-top: 3rem;
	position: relative;
	text-align: center;
}

.step:not(:last-of-type) .step__item {
	-webkit-clip-path: polygon(100% 0, 100% 85%, 50% 100%, 0 85%, 0 0);
	clip-path: polygon(100% 0, 100% 85%, 50% 100%, 0 85%, 0 0);
}

.step:nth-of-type(even) .step__item {
	background-color: #fec14d;
}

.step__number {
	font-size: 1.625rem;
	letter-spacing: 2.6px;
}

.step__title-box {
	margin-left: 0.9375rem;
	margin-right: 1.5625rem;
}

.step__title {
	border-bottom: 0.1875rem solid #fbe148;
	color: #333;
	font-size: 1.25rem;
	font-weight: 700;
	margin-top: 1.25rem;
}

.step__check {
	color: #fb7a02;
}

.step__text {
	color: #555;
	font-size: 1rem;
	font-weight: 500;
	line-height: 180%; /* 28.8px */
	margin-top: 1.25rem;
}

.text-border {
	border-left: 1px #e1e1e1 solid;
	border-right: 1px #e1e1e1 solid;
	padding-left: 4%;
	padding-right: 4%;
}

.title-line {
	align-items: center;
	display: flex;
	justify-content: center;
	text-transform: uppercase;
}

.title-line::before,
.title-line::after {
	background: #111;
	content: "";
	height: 2.5rem;
	width: 0.125rem;
}

.title-line::before {
	margin-right: 0.625rem;
	transform: rotate(-30deg);
}

.title-line::after {
	margin-left: 0.625rem;
	transform: rotate(30deg);
}

.outer-line::before {
	height: 1.25rem;
	margin-top: 1.875rem;
	transform: rotate(-42deg);
}

.outer-line::after {
	height: 1.25rem;
	margin-top: 1.875rem;
	transform: rotate(42deg);
}

.top-btn {
	align-items: center;
	border: 2px solid #f5a815;
	border-radius: 50%; /* 正円にする */
	bottom: 20px;
	display: flex;
	height: 50px;
	justify-content: center;
	position: fixed;
	right: 30px;
	transition: transform 0.6s; /* 回転アニメーションの設定 */
	width: 50px;
}

.top-btn .fa-chevron-up {
	color: #f5a815; /* アイコンの色を変更 */
	font-size: 1.75rem; /* アイコンの大きさを変更 */
	transition: transform 0.3s; /* 移動アニメーションの設定 */
}

.top-btn:hover .fa-chevron-up {
	transform: translateY(-5px); /* ホバー時に上に5px移動 */
}

.works-list__item-img {
	-o-object-fit: cover;
	margin-left: auto;
	margin-right: auto;
	margin-top: 2.5rem;
	max-width: 26.25rem;
	min-width: 11.25rem;
	object-fit: cover;
	padding-left: 4.5rem;
	padding-right: 4.5rem;
	width: 100%;
}

.works-list__item-img img {
	aspect-ratio: 1/1;
	height: auto;
}

.works-list__item-img--driver {
	-o-object-fit: cover;
	margin-left: auto;
	margin-right: auto;
	margin-top: 2.5rem;
	max-width: 26.25rem;
	min-width: 11.25rem;
	object-fit: cover;
	padding-left: 4.5rem;
	padding-right: 4.5rem;
	width: 100%;
}

.works-list__item-img--driver img {
	aspect-ratio: 1/1;
	height: auto;
}

.works-list__background-wrapper {
	background-color: #fff;
	padding-bottom: 1.5rem;
	padding-top: 3.125rem;
}

.works-list__flex-box {
	align-items: start;
	display: flex;
	flex-direction: column-reverse;
}

.works-list__item:nth-of-type(2) {
	margin-top: 3rem;
}

.works-list__item-text-wrap {
	padding-left: 1.5625rem;
	padding-right: 1.5625rem;
}

.works-list__item-title {
	color: #222;
	font-size: 1.375rem;
	font-weight: 700;
	letter-spacing: 1.1px;
	text-align: center;
}

.works-list__item-text {
	color: #111;
	font-size: 1rem;
	font-weight: 500;
	line-height: 170%; /* 27.2px */
	margin-top: 2.0625rem;
}

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

.u-desktop {
	display: block;
}

.u-mobile {
	display: none;
}

html {
	font-size: 1.4545454545vw;
}

.company__overview {
	padding-bottom: 6.25rem;
	padding-top: 5.25rem;
}

.company__icon {
	width: 1.375rem;
}

.company__treat {
	aspect-ratio: 1/1;
	bottom: -10rem;
	height: auto;
	left: 0;
	position: absolute;
	width: 40%;
}

.company__title {
	font-size: 2rem;
}

.company__list {
	margin: 3.25rem auto 0;
}

.company__list-item {
	font-size: 1.125rem;
}

.fee__title-wrap {
	height: 7.0625rem;
}

.fee__icon {
	width: 4.75rem;
}

.fee__icon-background {
	width: 10.6875rem;
}

.fee__title {
	font-size: 2.5rem;
}

.fee__treat-img {
	aspect-ratio: 1/1;
	height: auto;
	position: absolute;
	right: 0%;
	top: -7%;
	width: 32%;
	z-index: -1;
}

.fee__content {
	padding-bottom: 8.75rem;
	padding-top: 6.25rem;
}

.fee__text {
	font-size: 2.5rem;
}

.fee__cards {
	flex-direction: row;
	gap: 1.75rem;
	margin-top: 4rem;
}

.fee__card {
	margin-top: 0;
}

.footer__logo {
	height: 2.375rem;
	width: 3.75rem;
}

.footer__text {
	font-size: 1rem;
}

.footer__text::before,
.footer__text::after {
	height: 3.125rem;
}

.footer__text::before {
	margin-right: 0.9375rem;
}

.footer__text::after {
	margin-left: 0.9375rem;
}

.footer__text-ruby {
	letter-spacing: 10px;
}

.footer__title {
	font-size: 2.25rem;
	letter-spacing: 3.6px;
}

.footer__address {
	font-size: 1.125rem;
	margin-top: 1.5rem;
}

.footer__content {
	align-items: center;
	flex-direction: row;
	justify-content: space-between;
}

.footer__nav {
	flex-direction: row;
}

.footer__nav-items {
	flex-direction: row;
	gap: 5.75rem;
	justify-content: center;
	margin-top: 0;
}

.footer__info {
	font-size: 0.875rem;
	letter-spacing: 0.7px;
	margin-top: 2.5rem;
}

.header {
	height: 6.25rem;
}

.header__logo {
	height: 2.375rem;
	width: 3.75rem;
}

.header__text {
	letter-spacing: 10px;
}

.header__title {
	font-size: 2.25rem;
	letter-spacing: 3.6px;
}

.info__title {
	font-size: 1.5rem;
}

.mv__img {
	flex-direction: initial;
	height: 100%;
	justify-content: space-between;
	max-height: 38.4375rem;
}

.mv__img-left {
	height: 100%;
	width: 30%;
}

.mv__img-right {
	height: 100%;
	width: 70%;
}

.mv__title-wrap {
	margin-left: 0;
	margin-right: 0;
	top: 5rem;
	width: 60%;
}

.mv__sub-title {
	font-size: 1.5rem;
	margin-left: 2.5rem;
}

.mv__main-title {
	margin-left: 1.875rem;
	margin-top: 1.875rem;
}

.mv__title--red {
	font-size: 3.75rem;
	white-space: nowrap;
}

.mv__title--black {
	font-size: 3.75rem;
}

.mv__text-wrap {
	border-radius: 0px 15px 15px 0px;
	margin-top: 2.5rem;
}

.mv__text-sb {
	font-size: 1.3125rem;
	padding: 1.25rem;
}

.mv__text-sb:after {
	-webkit-clip-path: polygon(34% 0, 0 46%, 100% 67%);
	clip-path: polygon(34% 0, 0 46%, 100% 67%);
	height: 1.875rem;
	left: 4.5625rem;
	top: 3.625rem;
	width: 1.4375rem;
}

.mv__text-sb--small {
	font-size: 1.125rem;
}

.mv__text-price--black {
	font-size: 1.75rem;
	letter-spacing: 1.4px;
}

.mv__text-price--blue {
	font-size: 2.375rem;
}

.mv__text-price--small {
	font-size: 1.125rem;
}

.mv__text-blue {
	font-size: 1.75rem;
}

.mv__text-black {
	font-size: 1.75rem;
}

.news {
	padding-bottom: 3.4375rem;
	padding-top: 3.4375rem;
}

.news__title {
	font-size: 1.5rem;
}

.news__text {
	font-size: 1.125rem;
}

.service {
	padding-bottom: 10.625rem;
	padding-top: 6.25rem;
}

.service__background {
	margin: 0 auto;
	max-width: 53.75rem;
	padding-bottom: 7.5rem;
	padding-top: 2.5rem;
}

.service__title {
	font-size: 2.5rem;
}

.service__items {
	margin-top: 3.125rem;
}

.works {
	padding-bottom: 6.25rem;
	padding-top: 5.625rem;
}

.btn {
	font-size: 2rem;
}

.call {
	padding-bottom: 1.875rem;
	padding-top: 2.5rem;
}

.call__icon {
	height: 1.375rem;
	width: 1.375rem;
}

.call__text {
	font-size: 1.25rem;
}

.card__title {
	font-size: 3rem;
	letter-spacing: 2.4px;
}

.card__title--small {
	font-size: 2rem;
	letter-spacing: 1.6px;
}

.card__subtitle {
	font-size: 2rem;
	letter-spacing: 1.6px;
}

.card__subtitle--large {
	font-size: 3rem;
	letter-spacing: 1.6px;
}

.card__subtitle--small {
	font-size: 2.25rem;
	letter-spacing: 1.8px;
}

.card__subtitle--tiny {
	font-size: 2rem;
	letter-spacing: 1.6px;
}

.card__price-box {
	margin-top: 0.625rem;
}

.card__price {
	font-size: 4rem;
}

.card__price-small {
	font-size: 2rem;
}

.fee__title-line::before,
.fee__title-line::after {
	height: 3.75rem;
}

.fee__title-line::before {
	margin-right: 0.9375rem;
}

.fee__title-line::after {
	margin-left: 0.9375rem;
}

.fee__outer-line::before {
	height: 2.1875rem;
}

.fee__outer-line::after {
	height: 2.1875rem;
}

.footer-nav__item {
	font-size: 1.25rem;
	font-weight: 700;
}

.footer-nav__item-column {
	margin-left: 5.75rem;
}

.footer-nav__item-time {
	align-items: center;
	margin-top: 0;
}

.footer-nav__tel-text {
	font-size: 1.125rem;
}

.footer-nav__tel {
	font-size: 1.5rem;
}

.footer-nav__times {
	font-size: 1rem;
	font-weight: 500;
	text-align: center;
}

.footer-nav__time {
	font-family: "Open Sans";
	font-size: 1.25rem;
	font-weight: 700;
}

.inner {
	max-width: 1150px;
	padding-left: 25px;
	padding-right: 25px;
}

.nav__items {
	gap: 2.8125rem;
}

.nav__item {
	font-size: 1.25rem;
	font-weight: 700;
}

.nav__item-column {
	margin-left: 5.75rem;
}

.nav__item-time {
	align-items: center;
	margin-top: 0;
}

.nav__tel-text {
	font-size: 1.125rem;
}

.nav__tel {
	font-size: 1.5rem;
}

.nav__times {
	font-size: 1rem;
	font-weight: 500;
	text-align: center;
}

.nav__time {
	font-family: "Open Sans";
	font-size: 1.25rem;
	font-weight: 700;
}

.step__item {
	font-size: 1.5rem;
	margin-left: 9.375rem;
	padding-left: 1.125rem;
	padding-right: 1.125rem;
}

.step__number {
	font-size: 2.25rem;
}

.step__title-box {
	margin-left: 2.5rem;
	margin-right: 9.375rem;
}

.step__title {
	font-size: 1.75rem;
}

.step__text {
	font-size: 1.125rem;
}

.text-border {
	padding-left: 3.125rem;
	padding-right: 3.125rem;
}

.title-line::before,
.title-line::after {
	height: 3.75rem;
}

.title-line::before {
	margin-right: 0.9375rem;
}

.title-line::after {
	margin-left: 0.9375rem;
}

.outer-line::before {
	height: 2.1875rem;
}

.outer-line::after {
	height: 2.1875rem;
}

.works-list__item-img {
	left: 0;
	margin-top: 0;
	padding-left: 0;
	padding-right: 0;
	position: absolute;
	top: -2rem;
}

.works-list__item-img--driver {
	margin-top: 0;
	padding-left: 0;
	padding-right: 0;
	position: absolute;
	right: 0;
	top: -2rem;
}

.works-list__background-wrapper {
	background: linear-gradient(90deg, rgba(0, 0, 0, 0) 25%, rgba(255, 255, 255, 0.75) 25%, rgb(255, 255, 255));
	background-color: transparent;
	height: 21.875rem;
	padding-bottom: 0;
	padding-top: 0;
}

.works-list__item:nth-child(2) .works-list__background-wrapper {
	background: linear-gradient(90deg, rgb(255, 255, 255) 75%, rgb(255, 255, 255) 75%, rgba(255, 255, 255, 0) 75%);
}

.works-list__item:nth-child(2) .works-list__item-text-wrap {
	margin-left: 2.5rem;
	margin-right: auto;
	padding-bottom: 3rem;
	padding-left: 2.5rem;
	padding-right: 13.75rem;
	padding-top: 3.375rem;
	width: 70%;
}

.works-list__flex-box {
	flex-direction: row;
	position: relative;
}

.works-list__item:nth-of-type(2) {
	margin-top: 10rem;
}

.works-list__item-text-wrap {
	margin-left: auto;
	padding-bottom: 3rem;
	padding-left: 10rem;
	padding-right: 5rem;
	padding-top: 3.375rem;
	width: 70%;
}

.works-list__item-title {
	font-size: 2.25rem;
	letter-spacing: 1.8px;
	text-align: left;
}

.works-list__item-text {
	font-size: 1.125rem;
	margin-top: 1.875rem;
}

}

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

.fee__title {
	transform: translateY(-85px);
}

}

@media (min-width: 1100px) {

html {
	font-size: 16px;
}

}

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

.fee__treat-img {
	right: -10%;
}

}

@media (max-width: 375px) {

html {
	font-size: 4.2666666667vw;
}

}


/*# sourceMappingURL=style.css.map */
