body {
	font-family: "Noto Sans JP", sans-serif;
}

.u_desktop {
	display: block;
}

.u_mobile {
	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;
}

@media screen and (max-width: 767px) {
	.u_desktop {
		display: none;
	}

	.u_mobile {
		display: block;
	}

	html {
		font-size: 16px;
	}
}

/* ãƒœã‚¿ãƒ³ */

.button {
	background-color: #0e8bd9;
	border: 1px solid #0e8bd9;
	border-radius: 27px;
	color: #fff;
	display: block;
	font-size: 16px;
	letter-spacing: 0.06em;
	line-height: 2.25;
	margin: 0 auto;
	padding: 10px 0;
	padding-left: 30px;
	position: relative;
	transition: 0.3s color, 0.3s background-color;
	width: 100%;
}

.button:hover {
	background-color: #fff;
	color: #0e8bd9;
}

.button span {
	background-color: #0e8bd9;
	font-weight: bold;
	height: 2px;
	position: absolute;
	right: 30px;
	top: 50%;
	transform: translateY(-50%);
	transition: 0.3s right;
	width: 15px;
}

.button span::after {
	border-right: 2px solid #0e8bd9;
	border-top: 2px solid #0e8bd9;
	content: "";
	height: 10px;
	position: absolute;
	right: 0px;
	top: 50%;
	transform: translateY(-50%) rotate(45deg);
	transition: 0.3s border-color;
	width: 10px;
}

.button:hover span {
	background-color: #fff;
	right: 20px;
}

.button:hover span::after {
	border-color: #fff;
}

.button.button_blue {
	border-radius: 6px;
	padding: 12px 0 13px 30px;
	position: relative;
	width: 100%;
	color: #fff;
	font-weight: 700;
}

.button.button_blue.button_not {
	padding: 0;
	color: #151515;
	font-size: 17px;
	background-color: transparent;
	border: none;
}

.button.button_blue.button_not span {
	background-color: #151515;
}

.button.button_blue.button_not span::after {
	border-right: 2px solid #151515;
	border-top: 2px solid #151515;
}

.button.button_blue span {
	background-color: #fff;
	height: 2px;
	position: absolute;
	right: 30px;
	top: 50%;
	transform: translateY(-50%);
	transition: 0.3s right;
	width: 15px;
}

.button.button_blue span::after {
	border-right: 2px solid #fff;
	border-top: 2px solid #fff;
	content: "";
	height: 10px;
	position: absolute;
	right: 0px;
	top: 50%;
	transform: translateY(-50%) rotate(45deg);
	transition: 0.3s border-color;
	width: 10px;
}

.button.button_blue:hover span {
	background-color: #0e8bd9;
	right: 20px;
}

.button.button_blue:hover span::after {
	border-color: #0e8bd9;
}

.button_light_blue.button {
	background-color: #e5f0ff;
	border: 1px solid #e5f0ff;
	border-radius: 8px;
	color: #0e8bd9;
	display: block;
	font-weight: 700;
	letter-spacing: 0.03em;
	line-height: 2.25;
	padding: 14px 0 14px 19px;
	position: relative;
	transition: 0.3s color, 0.3s background-color;
	width: 100%;
}

.button_light_blue.button:hover {
	background-color: #0e8bd9;
	color: #e5f0ff;
}

.button_light_blue.button span {
	font-weight: bold;
	position: absolute;
	right: 30px;
	top: 50%;
	transform: translateY(-50%);
	transition: 0.3s right;
}

.button_light_blue.button:hover span {
	right: 20px;
}

.button_green.button span {
	background-color: #fff;
}

.button_green.button span::after {
	border-color: #fff;
}

.button_green.button:hover span {
	background-color: #a4c614;
}

.button_green.button:hover span::after {
	border-color: #a4c614;
}
.single_case_btn.button {
	width: 50%;
	margin-top: 2em;
}
@media screen and (max-width: 767px) {
	.button {
		padding: 10px 20px;
	}

	.button span {
		right: 20px;
	}

	.button:hover span {
		right: 30px;
		background-color: #fff;
	}

	.button:hover span::after {
		border-color: #fff;
	}

	.button_light_blue.button {
		background-color: #0e8bd9;
		border: 1px solid #0e8bd9;
		color: #fff;
		padding: 10px 0 10px 19px;
	}

	.button_light_blue.button.blue2 {
		background-color: #e5f0ff;
		border: 1px solid #e5f0ff;
		color: #0e8bd9;
		padding: 10px 0 10px 19px;
	}

	.button_light_blue.button:hover {
		background-color: #0e8bd9;
		color: #fff;
	}

	.button_light_blue.button:hover span {
		background-color: #fff;
		right: 20px;
	}

	.button_light_blue.button:hover span::after {
		border-color: #0e8bd8;
	}

	.button_light_blue.button.blue2:hover {
		background-color: #e5f0ff;
		color: #0e8bd9;
	}

	.button_light_blue.button span {
		right: 20px;
		background-color: #fff;
	}

	.button_light_blue.button.blue2 span {
		background-color: #0e8bd9;
	}

	.button_light_blue.button:hover span {
		right: 20px;
		background-color: #fff;
	}

	.button_light_blue.button.blue2:hover span {
		background-color: #0e8bd8;
	}

	.button_light_blue.button span::after {
		border-color: #fff;
	}

	.button_light_blue.button.blue2:hover span::after {
		border-color: #0e8bd8;
	}

	.button_light_blue.button.blue2 span::after {
		border-color: #0e8bd8;
	}

	.button_light_blue.button:hover span::after {
		border-color: #fff;
	}



	.button.button_blue.button_not {
		padding: 5px 0;
		padding-left: 20px;
		color: #fff;
		background-color: #0e8bd8;
		border: 1px solid #0e8bd9;
	}

	.button.button_blue.button_not span {
		background-color: #fff;
		transition: 0.3s background-color, 0.3s right;
	}

	.button.button_blue.button_not span::after {
		border-right: 2px solid #fff;
		border-top: 2px solid #fff;
		transition: 0.3s border-color;
	}

	.button.button_blue.button_not:hover {
		background-color: #fff;
		color: #0e8bd9;
	}

	.button.button_blue.button_not:hover span {
		background-color: #0e8bd8;
	}

	.button.button_blue.button_not:hover span::after {
		border-color: #0e8bd8;
	}

	.button_green.button:hover span {
		background-color: #fff;
	}

	.button_green.button:hover span::after {
		border-color: #fff;
	}
}

/* TOPãƒšãƒ¼ã‚¸ãƒ–ãƒ­ã‚° */

.top_blog_section {
	min-width: 1400px;
	padding-bottom: 130px;
	padding-top: 152px;
}

.top_blog_section .head {
	align-items: flex-end;
	display: flex;
	justify-content: space-between;
}

.top_blog_section .title {
	color: #0e8bd9;
	font-size: 42px;
	font-weight: 900;
	letter-spacing: 0.06em;
	line-height: 0.8571428571;
}

.top_blog_section .subtitle {
	color: #4d4d4d;
	font-size: 16px;
	font-weight: 500;
	letter-spacing: 0.03em;
	line-height: 1.4375;
	margin-top: 30px;
}

.top_blog_section .button_wrap {
	max-width: 280px;
	width: 100%;
}

.top_blog_section .content {
	display: flex;
	justify-content: space-between;
	margin-top: 30px;
}

.top_blog_section .main_article {
	width: 45.6140350877%;
}

.top_blog_section .main_article .img_wrap {
	max-width: 520px;
}

.top_blog_section .main_article .img_wrap img {
	-o-object-fit: cover;
	aspect-ratio: 520/260;
	border-radius: 10px;
	object-fit: cover;
}

.top_blog_section .main_article .main_title {
	color: #151515;
	border-bottom: 1px solid #4d4d4d;
	font-size: 18px;
	font-weight: 700;
	letter-spacing: 0.03em;
	line-height: 1.3888888889;
	margin-top: 16px;
	padding-bottom: 24px;
	transition: 0.3s color, 0.3s border-color;
}

.top_blog_section .main_article .links:hover .main_title {
	border-color: #0e8bd9;
	color: #0e8bd9;
}

.top_blog_section .main_article .main_excerpt {
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
	color: #4d4d4d;
	display: -webkit-box;
	font-size: 14px;
	font-weight: 500;
	letter-spacing: 0.03em;
	line-height: 1.5;
	margin-top: 22px;
	overflow: hidden;
	text-overflow: ellipsis;
}

.top_blog_section .main_article .main_date {
	display: block;
	font-size: 14px;
	font-weight: bold;
	line-height: 1.3571428571;
	margin-top: 31px;
	color: #151515;
}

.top_blog_section .sub_article {
	width: 51.7543859649%;
}

.top_blog_section .sub_article .article_list {
	display: flex;
	flex-direction: column;
	gap: 20px;
}

.top_blog_section .sub_article {
	width: 51.7543859649%;
}

.top_blog_section .sub_article .links {
	display: flex;
	justify-content: space-between;
}

.top_blog_section .sub_article .img_wrap {
	max-width: 210px;
	width: 35.593220339%;
}

.top_blog_section .sub_article .img_wrap img {
	-o-object-fit: cover;
	aspect-ratio: 210/140;
	border-radius: 10px;
	object-fit: cover;
}

.top_blog_section .sub_article .text_item {
	max-width: 359px;
	width: 60.8474576271%;
}

.top_blog_section .sub_article .article_title {
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	display: -webkit-box;
	font-size: 14px;
	font-weight: 700;
	height: 40px;
	letter-spacing: 0.02em;
	line-height: 1.4285714286;
	margin-top: 10px;
	overflow: hidden;
	text-overflow: ellipsis;
	transition: 0.3s color;
	color: #151515;
}

.top_blog_section .sub_article .links:hover .article_title {
	color: #0e8bd9;
}

.top_blog_section .sub_article .article_excerpt {
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	color: #a0a0a0;
	display: -webkit-box;
	font-size: 12px;
	font-weight: 500;
	letter-spacing: 0.03em;
	line-height: 1.3333333333;
	margin-top: 8px;
	overflow: hidden;
	text-overflow: ellipsis;
}

.top_blog_section .sub_article .article_date {
	color: #a0a0a0;
	display: block;
	font-size: 12px;
	font-weight: bold;
	line-height: 1.5833333333;
	margin-top: 23px;
}

@media screen and (max-width: 767px) {
	.top_blog_section {
		min-width: 100%;
		padding-bottom: 80px;
		padding-top: 87px;
	}

	.top_blog_section .title {
		font-size: 28px;
	}

	.top_blog_section .subtitle {
		font-size: 14px;
		line-height: 1.5;
		margin-top: 22px;
	}

	.top_blog_section .button_wrap {
		margin: 0 auto;
		margin-top: 37px;
		max-width: 310px;
	}

	.top_blog_section .content {
		margin-top: 18px;
	}

	.top_blog_section .main_article .img_wrap img {
		aspect-ratio: 170/100;
	}

	.top_blog_section .sub_article {
		width: 100%;
	}

	.top_blog_section .sub_article .article_list {
		grid-gap: 20px 10px;
		display: grid;
		gap: 20px 10px;
		grid-template-columns: repeat(2, 1fr);
	}

	.top_blog_section .sub_article .links {
		flex-direction: column;
	}

	.top_blog_section .sub_article .img_wrap {
		max-width: 350px;
		width: 100%;
	}

	.top_blog_section .sub_article .img_wrap img {
		aspect-ratio: 170/100;
	}

	.top_blog_section .sub_article .text_item {
		max-width: 350px;
		width: 100%;
	}

	.top_blog_section .sub_article .article_title {
		font-size: 13px;
		height: auto;
		line-height: 1.3846153846;
		margin-top: 8px;
		color: #151515;
	}

	.top_blog_section .sub_article .article_excerpt {
		-webkit-line-clamp: 3;
		font-size: 12px;
		line-height: 1.3333333333;
		margin-top: 14px;
	}

	.top_blog_section .sub_article .article_date {
		margin-top: 8px;
	}
}

/* TOPãƒšãƒ¼ã‚¸ã€€company */

.top_company {
	min-width: 1400px;
	padding-bottom: 159px;
	padding-top: 114px;
}

.top_company .logo_wrap {
	margin: 0 auto;
	max-width: 365px;
	width: 100%;
}

.top_company .logo_wrap img {
	-o-object-fit: contain;
	aspect-ratio: 365/57;
	object-fit: contain;
}

.top_company .main_text {
	font-weight: 700;
	color: #151515;
	font-size: 22px;
	letter-spacing: 0.13em;
	line-height: 1.5909090909;
	margin-top: 23px;
	text-align: center;
}

.top_company .logo_wrap img {
	-o-object-fit: contain;
	aspect-ratio: 365/57;
	object-fit: contain;
}

.top_company .texts {
	color: #4d4d4d;
	margin-top: 50px;
}

.top_company .sub_text {
	font-size: 16px;
	font-weight: 500;
	letter-spacing: 0.03em;
	line-height: 1.5;
	text-align: center;
}

.top_company .sub_text:not(:first-of-type) {
	margin-top: 24px;
}

.top_company .button_group {
	align-items: center;
	display: flex;
	justify-content: center;
	margin-top: 53px;
	width: 100%;
}

.top_company .button_wrap {
	max-width: 340px;
	width: 100%;
}

.top_company .button_wrap:not(:first-of-type) {
	margin-left: 10px;
}

.top_company .button {
	border-radius: 8px;
	font-size: 16px;
	max-width: 100%;
	position: relative;
	width: 100%;
}

@media screen and (max-width: 767px) {
	.top_company {
		min-width: 100%;
		padding-bottom: 60px;
		padding-top: 63px;
	}

	.top_company .logo_wrap {
		max-width: 263px;
	}

	.top_company .main_text {
		font-size: 16px;
		letter-spacing: 0.04em;
		line-height: 1.625;
		margin-top: 36px;
	}

	.top_company .texts {
		margin-top: 33px;
	}

	.top_company .sub_text {
		font-size: 13px;
	}

	.top_company .sub_text:not(:first-of-type) {
		margin-top: 26px;
	}

	.top_company .button_group {
		flex-direction: column;
		margin-top: 31px;
	}

	.top_company .button_wrap {
		max-width: 310px;
	}

	.top_company .button_wrap:not(:first-of-type) {
		margin-left: 0;
		margin-top: 10px;
	}

	.button.button_blue span {
		right: 20px;
	}

	.button.button_blue:hover span {
		right: 15px;
	}

	.top_company .button {
		padding: 10px 0 10px 20px;
	}

	.top_company .button.button_light_blue {
		background-color: #e5f0ff;
		border-color: #e5f0ff;
		color: #0e8bd9;
	}
}

/* ä¸‹å±¤ãƒšãƒ¼ã‚¸ contact */

.common_contact {
	min-width: 1400px;
	padding-bottom: 100px;
	padding-top: 90px;
}

.common_contact .item_wrap {
	align-items: center;
	box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding: 56px 50px 50px;
}

.common_contact .contact_title {
	font-size: 28px;
	letter-spacing: 0.06em;
	line-height: 1.2857142857;
	text-align: center;
	font-weight: 700;
}

.common_contact .contact_description {
	color: #4d4d4d;
	font-size: 15px;
	font-weight: 500;
	letter-spacing: 0.03em;
	line-height: 1.5333333333;
	margin-top: 23px;
	text-align: center;
}

.common_contact .contact_info {
	align-items: center;
	display: flex;
	margin-top: 30px;
	width: 100%;
}

.common_contact .contact_tel {
	display: flex;
	flex-direction: column;
	max-width: 246px;
	width: 100%;
}

.common_contact .contact_tel .tel_label {
	font-family: "DIN Condensed", sans-serif;
	font-size: 44px;
	font-weight: bold;
	line-height: 1;
	padding-left: 10px;
}

.common_contact .contact_tel .tel_label span {
	font-size: 30px;
	line-height: 0.6333333333;
}

.common_contact .tel_hours {
	font-size: 14px;
	font-weight: 500;
	letter-spacing: 0.01em;
	line-height: 1.3571428571;
	text-align: right;
}

.common_contact .contact_buttons {
	align-items: center;
	display: flex;
	gap: 15px;
	justify-content: center;
	margin-left: 41px;
	padding-left: 41px;
	position: relative;
	width: 100%;
}

.common_contact .contact_buttons::before {
	background-color: #dbdbdb;
	content: "";
	height: 50px;
	left: 0;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 1px;
}

.common_contact .button_wrap {
	max-width: 350px;
	width: 100%;
}

.common_contact .button_wrap .email_button,
.common_contact .button_wrap .line_button {
	border-radius: 8px;
	color: #fff;
	display: block;
	font-size: 16px;
	padding: 25px 0;
	padding-left: 20.2857142857%;
	position: relative;
	transition: 0.3s background-color, 0.3s right, 0.3s color;
	width: 100%;
}

.common_contact .button_wrap .email_button {
	background-color: #0e8bd9;
	border: 1px solid #0e8bd9;
}

.common_contact .button_wrap .email_button:hover {
	background-color: #e5f0ff;
	color: #0e8bd9;
}

.common_contact .button_wrap .email_button::before {
	background-image: url(../image/mail-icon.png);
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	content: "";
	height: 1.375rem;
	left: 20px;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 1.9375rem;
	z-index: 1;
}

.common_contact .button_wrap .email_button span {
	background-image: url(../image/blue-icon.png);
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	border: 1px solid #0e8bd9;
	border-radius: 50%;
	content: "";
	height: 2.5rem;
	position: absolute;
	right: 20px;
	top: 50%;
	transform: translateY(-50%);
	transition: 0.3s background-color, 0.3s right, 0.3s color;
	width: 2.5rem;
	z-index: 1;
}

.common_contact .button_wrap .email_button:hover span {
	right: 15px;
}

.common_contact .button_wrap .line_button::before {
	background-image: url(../image/line-icon.png);
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	content: "";
	height: 2.5rem;
	left: 20px;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 2.5rem;
	z-index: 1;
}

.common_contact .button_wrap .line_button span {
	background-image: url(../image/green-icon.png);
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	border: 1px solid #06c755;
	border-radius: 50%;
	content: "";
	height: 2.5rem;
	position: absolute;
	right: 20px;
	top: 50%;
	transform: translateY(-50%);
	transition: 0.3s background-color, 0.3s right, 0.3s color;
	width: 2.5rem;
}

.common_contact .button_wrap .line_button:hover span {
	right: 15px;
}

.common_contact .button_wrap .line_button {
	background-color: #06c755;
}

.common_contact .button_wrap .line_button:hover {
	background-color: #ecf4d9;
	color: #06c755;
}

@media screen and (max-width: 767px) {
	.common_contact {
		min-width: 100%;
		padding: 50px 0;
	}

	.common_contact .item_wrap {
		padding: 25px 15px;
	}

	.common_contact .contact_title {
		font-size: 22px;
	}

	.common_contact .contact_description {
		font-size: 12px;
	}

	.common_contact .contact_info {
		flex-direction: column;
	}

	.common_contact .contact_tel .tel_label {
		font-size: 44px;
	}

	.common_contact .contact_tel .tel_label span {
		font-size: 20px;
	}

	.common_contact .contact_buttons {
		border: none;
		flex-direction: column;
		margin-left: 0;
		margin-top: 30px;
		padding-left: 0;
	}

	.common_contact .contact_buttons::before {
		content: none;
	}

	.common_contact .button_wrap {
		max-width: 280px;
	}

	.common_contact .button_wrap .email_button,
	.common_contact .button_wrap .line_button {
		font-size: 14px;
		padding: 20px 0;
		padding-left: 17.8571428571%;
	}

	.common_contact .button_wrap .email_button::before {
		left: 10px;
	}

	.common_contact .button_wrap .email_button span {
		height: 30px;
		width: 30px;
	}

	.common_contact .button_wrap .line_button::before {
		left: 10px;
	}

	.common_contact .button_wrap .line_button span {
		height: 30px;
		width: 30px;
	}
}

/* TOPãƒšãƒ¼ã‚¸ã€€features */

.top_features {
	min-width: 1400px;
	padding-bottom: 130px;
	padding-top: 159px;
}

.top_features .top_features_container {
	width: 100%;
	max-width: 1290px;
	padding: 0 25px;
}

.top_features .introduction_area {
	position: relative;
}

.top_features .main_title {
	font-size: 60px;
	font-weight: 900;
	letter-spacing: 0.06em;
	line-height: 0.9;
}

.top_features .highlight_large {
	color: #0e8bd9;
	font-family: "DIN Condensed", sans-serif;
	font-size: 140px;
	font-weight: bold;
}

.top_features .highlight_medium {
	color: #0e8bd9;
	font-size: 50px;
	margin-left: -13px;
}

.top_features .highlight_small {
	font-size: 50px;
	margin-left: -15px;
}

.top_features .subtitle {
	color: #0e8bd9;
	font-size: 26px;
	font-weight: 900;
	left: 60px;
	letter-spacing: 0.09em;
	line-height: 1.3846153846;
	position: absolute;
	top: -9px;
}

.top_features .description {
	color: #4d4d4d;
	font-size: 16px;
	font-weight: 500;
	letter-spacing: 0.03em;
	line-height: 2.25;
	margin-top: -10px;
}

.top_features .features_grid {
	grid-gap: 0 20px;
	display: grid;
	gap: 0 20px;
	grid-template-columns: repeat(3, 1fr);
	margin-top: 20px;
}

.top_features .features_item {
	display: grid;
	grid-row: span 4;
	grid-template-rows: subgrid;
}

/* Firefoxå°‚ç”¨ã®ã‚¹ã‚¿ã‚¤ãƒ« */
@supports (-moz-appearance: none) {
	.top_features .features_grid {
		display: grid;
		grid-template-rows: repeat(4, auto);
	}

	.top_features .features_item {
		display: grid;
		grid-row: span 4;
		grid-template-rows: repeat(4, auto);
	}

	.top_features .item_title {
		height: 54px;
	}

	/* SPï¼ˆã‚¹ãƒžãƒ¼ãƒˆãƒ•ã‚©ãƒ³ï¼‰æ™‚ã®ã‚¹ã‚¿ã‚¤ãƒ« */
	@media (max-width: 768px) {
		.top_features .item_title {
			height: auto;
		}
	}
}

.top_features .features_image {
	-o-object-fit: cover;
	aspect-ratio: 400/220;
	border-radius: 6px;
	object-fit: cover;
}

.top_features .item_title {
	color: #0e8bd9;
	font-size: 19px;
	font-weight: 900;
	letter-spacing: 0.09em;
	line-height: 1.4210526316;
	margin-top: 7px;
}

.top_features .item_description {
	color: #4d4d4d;
	border-top: 2px solid #151515;
	border-top-style: dotted;
	border-top-width: 3px;
	font-size: 16px;
	letter-spacing: 0.03em;
	line-height: 1.5;
	margin-top: 24px;
	padding-top: 16px;
}

.top_features .mobile_break {
	display: none;
}

@media screen and (max-width: 767px) {
	.top_features {
		max-width: 600px;
		min-width: 100%;
		padding-bottom: 20px;
		padding-top: 104px;
	}

	.top_features .top_features_container {
		max-width: 600px;
		padding: 0 20px;
	}

	.top_features .main_title {
		font-size: 50px;
	}

	.top_features .highlight_large {
		font-size: 104px;
	}

	.top_features .highlight_medium {
		font-size: 40px;
		margin-left: -11px;
	}

	.top_features .highlight_small {
		font-size: 40px;
		margin-left: -14px;
	}

	.top_features .subtitle {
		font-size: 16px;
		left: 45px;
		top: -7px;
	}

	.top_features .description {
		font-size: 14px;
		letter-spacing: normal;
		line-height: 1.5714285714;
		margin-top: 0;
	}

	.top_features .features_grid {
		gap: 30px;
		grid-template-columns: repeat(1, 1fr);
		margin-top: 19px;
	}

	.top_features .features_item {
		grid-template-rows: none;
	}

	.top_features .features_image {
		aspect-ratio: 350/160;
	}

	.top_features .item_title {
		margin-top: 13px;
	}

	.top_features .item_description {
		font-size: 14px;
		line-height: 1.5714285714;
		margin-top: 20px;
	}

	.top_features .mobile_break {
		display: inline;
	}
}

/* ãƒ•ã‚©ãƒ³ãƒˆã®è¨­å®š */

@font-face {
	font-family: "DIN Condensed";
	font-style: normal;
	font-weight: normal;
	src: url("../font/DIN Condensed Bold.ttf") format("opentype");
}

@font-face {
	font-family: "TsunagiGothic";
	font-style: normal;
	font-weight: normal;
	src: url("../../font/TsunagiGothic.ttf") format("opentype");
}

/* footer */

.footer {
	/* color: #fff; */
	min-width: 1400px;
	padding-bottom: 50px;
	padding-top: 136px;
	position: relative;
	z-index: 1100;
}

.footer_bg {
	background-image: url(../image/footer-bg.jpg);
	background-position: bottom;
	background-repeat: no-repeat;
	background-size: cover;
	content: "";
	height: 100%;
	left: 0;
	position: absolute;
	top: 0;
	width: 100%;
	z-index: -2;
}

.footer_bg::after {
	background: linear-gradient(to bottom, rgba(255, 255, 255, 0.9) 0%, rgba(255, 255, 255, 0.66) 100%);
	content: "";
	height: 100%;
	left: 0;
	position: absolute;
	top: 0;
	width: 100%;
	z-index: -1;
}

.footer_logo_section {
	display: flex;
	flex-direction: column;
	margin: 0 auto;
	text-align: center;
	width: -moz-fit-content;
	width: fit-content;
}

.footer .wrap {
	width: 357px;
}

.footer .wrap .logo_link {
	display: block;
}

.footer .footer_logo {
	-o-object-fit: contain;
	aspect-ratio: 357/53;
	object-fit: contain;
}

.footer .logo_group {
	align-items: center;
	display: flex;
	justify-content: center;
	margin: 0 auto;
	margin-top: 23px;
	width: -moz-fit-content;
	width: fit-content;
}

.footer .wrap_sdgs {
	min-width: 58px;
	width: 16.5714285714%;
}

.footer .logo_sdgs {
	-o-object-fit: contain;
	aspect-ratio: 58/43;
	object-fit: contain;
}

.footer .wrap_social {
	margin-left: 18px;
	min-width: 159px;
	width: 45.4285714286%;
}

.footer .logo_social {
	aspect-ratio: 159/31;
}

.footer .address {
	font-size: 14px;
	font-weight: 500;
	letter-spacing: 0.03em;
	line-height: 1.5;
	margin-top: 1px;
}

.footer .governor {
	font-size: 14px;
	font-weight: 500;
	letter-spacing: 0.03em;
	line-height: 1.5;
	margin-top: 15px;
}

.footer .nav_section {
	display: grid;
	grid-template-columns: repeat(6, 1fr);
	margin-top: 70px;
}

.footer .nav_list.nav_list_left {
	margin-left: -10px;
}

.footer .nav_list.nav_list_top {
	margin-top: 46px;
	width: 200px;
}

.footer .nav_list.nav_list_end {
	margin-left: 70px;
	width: 120px;
}

.footer .nav_item {
	font-size: 14px;
	letter-spacing: 0.03em;
	line-height: 1.5;
}

.footer .nav_item:not(:first-of-type) {
	margin-top: 15px;
}

.footer .nav_link {
	display: block;
	padding: 5px 0;
	transition: 0.3s color;
	color: #000;
}

.footer .nav_link:hover {
	color: #0e8bd9;
}

.footer .nav_link.arrow {
	padding-left: 10px;
	position: relative;
}

.footer .nav_link.arrow::before {
	content: ">";
	left: 0;
	position: absolute;
}

.footer .nav_link.icon {
	position: relative;
}

.footer .nav_link.icon::after {
	background-image: url(../image/footer-icon.png);
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	content: "";
	height: 13px;
	margin-left: 7px;
	position: absolute;
	top: 51%;
	transform: translateY(-50%);
	width: 13px;
}

.footer_copyright {
	border-top: 1px solid #000;
	margin-top: 103px;
	padding-top: 17px;
	text-align: center;
}

.footer_copyright p {
	font-size: 14px;
	font-weight: 300;
	line-height: 1.3571428571;
}

@media screen and (max-width: 767px) {
	.footer {
		min-width: 100%;
		padding-bottom: 38px;
		padding-top: 56px;
		z-index: 800
	}

	.footer_bg::after {
		/* background: linear-gradient(to bottom, rgba(255, 255, 255, 0.1) 0%, rgba(98, 98, 98, 0.6) 100%); */
	}

	.footer_logo_section {
		max-width: 500px;
		width: 100%;
	}

	.footer .wrap {
		margin: 0 auto;
		max-width: 500px;
		min-width: 273px;
		width: 78%;
	}

	.footer .address {
		margin-top: 33px;
	}

	.footer .governor {
		margin-top: 18px;
	}

	.footer .nav_section {
		margin-top: 0;
	}

	.footer_copyright {
		margin-top: 20px;
		padding-top: 16px;
	}

	.footer_copyright p {
		font-size: 12px;
		line-height: 1.5833333333;
	}
}

/* header */

.header {
	height: 100px;
	min-width: 1340px;
	width: 100%;
	position: fixed;
	background-color: #fff;
	z-index: 1000;
	top: 0;
	left: 0;
}

.header .inners {
	align-items: center;
	display: flex;
	height: inherit;
	justify-content: space-between;
	padding: 0 50px;
}

.header .wpap {
	align-items: center;
	display: flex;
	height: inherit;
}

.header .link {
	align-items: center;
	display: flex;
	height: inherit;
	justify-content: center;
}

.header .logo {
	height: inherit;
	width: 369px;
}

.header .logo .link img {
	-o-object-fit: contain;
	aspect-ratio: 370/57;
	object-fit: contain;
}

.header .logo_social {
	height: inherit;
	margin-left: 40px;
	padding-left: 40px;
	position: relative;
	width: 226px;
}

.header .logo_social::before {
	background-color: #c9c9c9;
	content: "";
	height: 30px;
	left: 0;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 1px;
}

.header .logo_social img {
	-o-object-fit: contain;
	aspect-ratio: 186/36;
	object-fit: contain;
}

.header .logo_sdgs {
	height: inherit;
	margin-left: 26px;
	width: 83px;
}

.header .logo_sdgs img {
	-o-object-fit: contain;
	aspect-ratio: 83/61;
	object-fit: contain;
}

.header .right_wrap {
	display: flex;
}
.header .logo_social a,
.header .logo_sdgs a{
	cursor:default;
}
.header .item {
	align-items: flex-end;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.header .top_item {
	font-size: 13px;
	font-weight: 500;
	letter-spacing: 0.01em;
	line-height: 1.4615384615;
}

.header .bottom_item {
	display: flex;
	font-size: 16px;
	font-weight: 700;
	letter-spacing: 0.06em;
	line-height: 1.1875;
	margin-top: 13px;
}

.header .bottom_item .link {
	color: #151515;
	transition: 0.3s color;
}

.header .bottom_item .link:hover {
	color: #0e8bd9;
}

.header .bottom_item .item:not(:first-child) {
	margin-left: 40px;
}

.header__hamburger {
	background-color: #0e8bd9;
	border: none;
	border-radius: 6px;
	cursor: pointer;
	display: flex;
	flex-direction: column;
	height: 54px;
	justify-content: center;
	margin: 0;
	margin-left: 46px;
	outline: none;
	padding: 0;
	position: relative;
	transition: 0.3s;
	width: 54px;
	z-index: 999;
}

.header__hamburger.is-open {
	background-color: transparent;
}

.header__hamburger span {
	background-color: #fff;
	display: block;
	height: 2px;
	left: 50%;
	position: relative;
	transform: translateX(-50%);
	transition: 0.5s;
	width: 23px;
}

.header__hamburger span:nth-of-type(1) {
	top: -5px;
}

.header__hamburger span:nth-of-type(2) {
	top: 0;
}

.header__hamburger span:nth-of-type(3) {
	top: 5px;
}

.header__hamburger.is-open span:nth-of-type(1) {
	background-color: #fff;
	top: 0;
	transform: translateX(-50%) rotate(45deg);
}

.header__hamburger.is-open span:nth-of-type(2) {
	opacity: 0;
}

.header__hamburger.is-open span:nth-of-type(3) {
	background-color: #fff;
	top: -4px;
	transform: translateX(-50%) rotate(-45deg);
}

/* ãƒ‰ãƒ­ãƒ¯ãƒ¼ãƒ¡ãƒ‹ãƒ¥ãƒ¼ */

.drawer_menu {
	background-color: #0e8bd9;
	background-color: rgba(14, 139, 217, 0.9);
	bottom: 0;
	display: none;
	height: 100vh;
	left: 0;
	overflow-y: scroll;
	position: absolute;
	right: 0;
	scrollbar-width: none;
	top: 0;
	width: 100%;
	z-index: 900;
}

.drawer_menu::-webkit-scrollbar {
	display: none;
}

.drawer_wrap {
	margin: 0 auto;
	max-width: 1200px;
	padding: 0 10px;
	padding-bottom: 50px;
}

.drawer_navigation {
	align-items: center;
	display: flex;
	flex-direction: column;
	gap: 34px 0;
	justify-content: center;
	margin-top: 105px;
}

.drawer_menu .nav_section {
	display: grid;
	grid-template-columns: repeat(6, 1fr);
	margin-top: 200px;
}

.drawer_menu .nav_list.nav_list_top {
	margin-top: 46px;
	width: 200px;
}

.drawer_menu .nav_list.nav_list_end {
	margin-left: 70px;
	width: 120px;
}

.drawer_menu .nav_item {
	color: #fff;
	font-size: 14px;
	font-weight: 500;
	letter-spacing: 0.03em;
	line-height: 1.5;
}

.drawer_menu .nav_item:not(:first-of-type) {
	margin-top: 15px;
}

.drawer_menu .nav_link {
	display: block;
	padding: 5px 0;
	transition: 0.3s color;
	color: #ffffff;
}

.drawer_menu .nav_link:hover {
	color: #0e8bd9;
	color: #f5ff00;
}

.drawer_menu .nav_link.arrow {
	padding-left: 10px;
	position: relative;
}

.drawer_menu .nav_link.arrow::before {
	content: ">";
	left: 0;
	position: absolute;
}

.drawer_menu .nav_link.icon {
	position: relative;
}

.drawer_menu .nav_link.icon::after {
	background-image: url(../image/footer-icon.png);
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	content: "";
	height: 13px;
	margin-left: 7px;
	position: absolute;
	top: 51%;
	transform: translateY(-50%);
	width: 13px;
}

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

@media screen and (max-width: 767px) {
	.header {
		height: 70px;
		min-width: auto;
	}

	.header .inners {
		padding: 0 20px;
	}

	.header .logo {
		width: 223px;
	}

	.header .logo .link img {
		aspect-ratio: 223/35;
	}

	.header .item {
		display: none;
	}

	.header__hamburger {
		height: 48px;
		margin-left: 0;
		width: 48px;
	}

	.drawer_menu .nav_section {
		margin-top: 50px;
		display: block;
		text-align: center;
	}

	.drawer_menu .nav_list.nav_list_end {
		margin-left: 0;
		width: auto;
	}

	.drawer_menu .nav_item {
		font-size: 12px;
		margin-top: 15px;
	}

	.drawer_menu .nav_link {
		display: inline-block;
	}

	.drawer_menu .nav_list.nav_list_top {
		margin-top: 0;
		width: 100%;
	}

	.inner {
		max-width: 600px;
		min-width: none;
		padding-left: 20px;
		padding-right: 20px;
	}
}

/* ä¸å‹•ç”£ç®¡ç†ãƒšãƒ¼ã‚¸ã®topã‚»ã‚¯ã‚·ãƒ§ãƒ³ */

.subpage_management_heading {
	min-width: 1400px;
	padding-bottom: 80px;
	padding-top: 80px;
}

.subpage_management_heading .content {
	align-items: center;
	border-radius: 10px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	overflow: hidden;
}

.subpage_management_heading .title {
	background-color: #0e8bd9;
	color: #fff;
	font-size: 23px;
	font-weight: bold;
	letter-spacing: 0.06em;
	line-height: 1.5;
	padding: 15px 0;
	text-align: center;
	width: 100%;
}

.subpage_management_heading .text {
	background-color: #f5f9ff;
	font-size: 15px;
	font-weight: 500;
	letter-spacing: 0.03em;
	line-height: 1.5;
	padding: 20px 75px;
	width: 100%;
}

@media screen and (max-width: 767px) {
	.subpage_management_heading {
		min-width: 100%;
		padding: 40px 0;
	}

	.subpage_management_heading .title {
		font-size: 18px;
		padding: 10px 0;
	}

	.subpage_management_heading .text {
		padding: 20px 10px;
	}
}

/* TOPã€€MV */

.top_main_visual {
	/* height: 43.0555555556vw; */
	/* height: 620px; */
	min-width: 1400px;
	width: 100%;
}

.top_main_visual .inner_mv {
	display: flex;
	height: inherit;
	overflow: hidden;
}

.visual_content {
	height: inherit;
	position: relative;
	width: 68.0555555556%;
}

.visual_content>* {
	z-index: 1;
	position: relative;
}

.visual_content picture {
	height: 100%;
	position: absolute;
	inset: 0;
	z-index: -1;
}

.visual_content::before {
	content: "";
	position: absolute;
	inset: 0;
	background-color: #000;
	opacity: .12;
}

.top_main_visual .main_image {
	left: 0;
	position: absolute;
	top: 0;
	width: 100%;
	z-index: -1;
	height: 100%;
	-o-object-fit: cover;
	/* aspect-ratio: 980/630; */
	object-fit: cover;
}

.top_main_visual .text_main {
	padding-left: 50px;
	padding-top: 285px;
}

.highlight_text {
	color: #fff;
	font-size: 50px;
	font-weight: 900;
	letter-spacing: 0.06em;
	line-height: 1;
	margin-bottom: .4em;
}

.highlight_text .bg {
	background-color: #0e8bd8;
	display: inline-block;
	padding: .2em .3em;
}

.highlight_text .mid {
	font-size: .5em;
}

.highlight_text .small {
	font-size: 36px;
}

.highlight_text.highlight_text_main {
	display: flex;
	position: relative;
	text-shadow: 4px 4px 5px rgba(0, 0, 0, 0.16);
	width: fit-content;
}

.top_main_visual .highlight_text.highlight_text_main::after {
	color: #fff;
	content: "当社調べ";
	font-size: 16px;
	font-weight: 700;
	letter-spacing: 0.06em;
	position: absolute;
	top: 28px;
	right: -5px;
	transform: translateX(100%);
}

.highlight_text.highlight_text_main .blue {
	background-color: #0e8bd9;
	font-size: 30px;
	height: -moz-fit-content;
	height: fit-content;
	letter-spacing: 0.1em;
	line-height: 1;
	padding: 15px 14px;
	writing-mode: vertical-lr;
}

.highlight_text.highlight_text_main strong {
	font-family: "DIN Condensed", sans-serif;
	font-size: 150px;
	font-weight: bold;
	letter-spacing: normal;
	line-height: 1;
	margin-left: 17px;
	margin-top: 11px;
}

.highlight_text.highlight_text_main small {
	font-family: "DIN Condensed", sans-serif;
	font-size: 110px;
	font-weight: bold;
	letter-spacing: normal;
	line-height: 1;
	margin: 41px 0px 0 9px;
}

.highlight_text.highlight_text_main .small_50 {
	font-size: 50px;
	margin: 50px 0 0 8px;
}

.highlight_text.highlight_text_main .large {
	font-size: 60px;
	margin: 40px 0 0 0;
}

@media screen and (max-width: 767px) {
	.top_main_visual {
		height: auto;
		min-width: auto;
	}

	.top_main_visual .inner_mv {
		flex-direction: column;
		min-width: 100%;
	}

	.visual_content {
		overflow: hidden;
		width: 100%;
	}

	.top_main_visual .main_image {
		/* aspect-ratio: 390/520; */
	}

	.top_main_visual .text_main {
		padding-left: 20px;
		padding-top: 10vw;
		margin-bottom: 30vw;
	}

	.highlight_text {
		font-size: 36px;
	}

	.highlight_text .small {
		font-size: 26px;
	}

	.highlight_text.highlight_text_main {
		text-shadow: none;
	}

	.top_main_visual .highlight_text.highlight_text_main::after {
		font-size: 14px;
		/* left: 269px; */
		/* top: 17px; */
	}

	.highlight_text.highlight_text_main .blue {
		font-size: 21px;
		padding: 15px 9px;
	}

	.highlight_text.highlight_text_main strong {
		font-size: 110px;
		margin-left: 9px;
	}

	.highlight_text.highlight_text_main small {
		font-size: 60px;
		margin: 46px 0px 0 5px;
	}

	.highlight_text.highlight_text_main .small_50 {
		font-size: 34px;
		margin: 46px 0 0 4px;
	}

	.highlight_text.highlight_text_main .large {
		font-size: 45px;
		margin: 31px 0 0 0;
	}
}

/* MVå³å´ã€€contact form */

.key_features {
	display: flex;
	margin-top: -9px;
	padding-left: 3.125rem;
	padding-bottom: 50px;
}

.feature_detail {
	background-color: #0e8bd9;
	color: #fff;
	font-size: 24px;
	font-weight: 900;
	letter-spacing: 0.06em;
	line-height: 1.5;
	padding: 8px 30px;
}

.feature_detail span {
	color: #f5ff00;
}

.feature_detail:not(:first-child) {
	margin-left: 10px;
}

.top_main_visual .inquiry_form {
	background-color: #f5f9ff;
	/* height: inherit; */
	padding: 0 40px;
	width: 31.9444444444%;
	overflow: scroll;
}

.form_heading {
	font-size: 18px;
	font-weight: 700;
	letter-spacing: 0.08em;
	line-height: 2;
	padding-top: 25px;
	text-align: center;
}

.inquiry_form .form_label {
	display: block;
	font-size: 16px;
	font-weight: 700;
	letter-spacing: 0.06em;
	line-height: 2.25;
	width: 100%;
}

.inquiry_form .form_label span {
	color: #ea0000;
}

.inquiry_form .form_label:not(:first-of-type) {
	margin-top: 6px;
}

.inquiry_form .input_field {
	background-color: #fff;
	border: 1px solid #c7c7c7;
	border-radius: 6px;
	font-size: 14px;
	font-weight: 300;
	letter-spacing: 0.06em;
	line-height: 2.5714285714;
	padding: 3px 20px;
	width: 100%;
}

.inquiry_form #inquiry.input_field {
	line-height: 1.1;
}

.inquiry_form .input_field::-moz-placeholder {
	color: #bababa;
	font-size: 14px;
	font-weight: 300;
	letter-spacing: 0.06em;
	line-height: 2.5714285714;
}

.inquiry_form .input_field::placeholder {
	color: #bababa;
	font-size: 14px;
	font-weight: 300;
	letter-spacing: 0.06em;
	line-height: 2.5714285714;
}

.inquiry_form .select_wrapper {
	display: block;
	position: relative;
	width: 100%;
}

.inquiry_form .input_select {
	background-color: #fff;
	border: 1px solid #c7c7c7;
	border-radius: 6px;
	display: block;
	font-size: 14px;
	font-weight: 300;
	letter-spacing: 0.06em;
	line-height: 2.5714285714;
	padding: 5px 20px;
	position: relative;
	width: 100%;
}

.inquiry_form .select_wrapper::after {
	background-color: #fff;
	border-bottom: 2px solid #151515;
	border-right: 2px solid #151515;
	content: "";
	height: 10px;
	position: absolute;
	right: 20px;
	top: 50%;
	transform: translateY(-50%) rotate(45deg);
	width: 10px;
}

.form_radio_group label {
	display: block;
}

.form_radio_group label:not(:first-of-type) {
	margin-left: 20px;
}

.form_radio_group input {
	opacity: 0;
	position: absolute;
	z-index: -1;
}

.form_radio_group input+span {
	color: #9f9f9f;
	cursor: pointer;
	display: block;
	font-size: 14px;
	line-height: 1;
	padding-left: 30px;
	position: relative;
}

.form_radio_group input+span::before {
	background: #fff;
	border: 1px solid #ccc;
	border-radius: 50%;
	content: "";
	display: block;
	height: 20px;
	left: 0;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 20px;
}

.form_radio_group input+span::after {
	background: #0e8bd9;
	border: 1px solid transparent;
	border-radius: 50%;
	content: "";
	height: 10px;
	left: 4px;
	opacity: 0;
	padding: 5px;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	transition: 0.3s;
	width: 10px;
}

.form_radio_group input:checked+span::after {
	opacity: 1;
}

.form_wrap {
	margin-top: 10px;
}

.form_radio_group {
	align-items: center;
	border-bottom: 1px solid #c6c6c6;
	display: flex;
	margin-top: 10px;
	padding-bottom: 30px;
}

.form_radio_group input:checked+span {
	color: #151515;
}

.submit_button.button {
	margin: 0 auto;
	margin-top: 30px;
	width: 280px;
	padding-left: 0;
	text-align: center;
	font-weight: bold;
}

@media screen and (max-width: 767px) {
	.key_features {
		display: flex;
		justify-content: center;
		padding: 0 0 5vw;
	}

	.feature_detail {
		display: flex;
		align-items: center;
		justify-content: center;
		border-radius: 50%;
		font-size: 3.2vw;
		height: 28vw;
		line-height: 1.25;
		padding: 0;
		text-align: center;
		width: 28vw;
	}

	.top_main_visual .inquiry_form {
		margin-top: 0;
		padding: 80px 20px 20px;
		width: 100%;
	}

	.form_heading {
		background-color: #0e8bd9;
		border-radius: 25px;
		color: #fff;
		margin: 0 auto;
		max-width: 350px;
		padding: 8px 0;
		position: relative;
		text-align: center;
		width: 100%;
	}

	.form_heading::after {
		border: 12px solid transparent;
		border-top: 10px solid #0e8bd9;
		content: "";
		left: 50%;
		position: absolute;
		top: 100%;
		transform: translateX(-50%);
	}

	.inquiry_form .form_content {
		background-color: #fff;
		height: inherit;
		margin: 0 auto;
		margin-top: 30px;
		margin-top: 30px;
		max-width: 600px;
		padding: 11px 20px 30px;
	}

	.inquiry_form .form_label {
		font-size: 14px;
		margin-left: 10px;
	}

	.inquiry_form .form_label:not(:first-of-type) {
		margin-top: 12px;
	}

	.inquiry_form .input_field::-moz-placeholder {
		font-size: 12px;
	}

	.inquiry_form .input_field::placeholder {
		font-size: 12px;
	}

	.inquiry_form .input_select {
		font-size: 12px;
	}

	/* .form_radio_group label {
    display: inline-block;
  } */

	.form_radio_group label:not(:first-of-type) {
		margin-left: 0;
		margin-top: 30px;
	}

	.form_radio_group input+span {
		display: inline-block;
	}

	.form_wrap {
		align-items: center;
	}

	.form_radio_group {
		align-items: flex-start;
		border-bottom: none;
		flex-direction: column;
		margin-top: 20px;
		padding-bottom: 0;
	}

	.form_radio_group span {
		width: 100%;
		margin-left: 0;
	}

	.form_radio_group input+span {
		width: 100%;
		max-width: 310px;
		padding: 13px 0 13px 30px;
		background-color: #f0f0f0;
		border-radius: 6px;
	}

	.form_radio_group input+span::before,
	.form_radio_group input:checked+span::after {
		content: none;
	}

	.form_radio_group input:checked+span {
		background-color: #f4f8ff;
	}

	.wpcf7-list-item.last {
		margin-top: 8px;
	}

	.submit_button.button {
		margin-top: 43px;
		width: 260px;
	}
}

/* TOP news */

.top_news {
	min-width: 1400px;
	padding-top: 162px;
}

.news_inner {
	display: flex;
}

.top_news .news_intro {
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding-right: 80px;
	width: 35.701754386%;
}

.top_news .news_list {
	width: 67.2807017544%;
}

.top_news .news_title {
	color: #0e8bd9;
	font-size: 42px;
	font-weight: 900;
	letter-spacing: 0.06em;
	line-height: 0.8571428571;
}

.news_description {
	font-size: 16px;
	font-weight: 500;
	letter-spacing: 0.02em;
	line-height: 1.5625;
	margin-top: 23px;
	color: #4d4d4d;
}

.top_news .news_more_link {
	margin-top: 60px;
}

.top_news .news_more_link.u_desktop {
	display: block;
}

.top_news .news_more_link.u_mobile {
	display: none;
}

.top_news .button_wrap {
	max-width: 280px;
	width: 100%;
}

.top_news .button {
	border-radius: 6px;
}

.top_news .button:hover {
	color: #0e8bd8;
}

.top_news .button span {
	background-color: #fff;
}

.top_news .button:hover span {
	background-color: #0e8bd8;
}

.top_news .button span::after {
	border-color: #fff;
}

.top_news .button:hover span::after {
	border-color: #0e8bd8;
}

.top_news .news_item {
	border-bottom: 1px solid #bcbcbc;
	padding-bottom: 20px;
	width: 100%;
}

.top_news .news_item:not(:first-of-type) {
	padding-top: 20px;
}

.top_news .news_link {
	align-items: center;
	display: flex;
}

.top_news .news_link .news_image {
	aspect-ratio: 180/120;
	max-width: 180px;
	width: 24.5566166439%;
}

.top_news .news_link .news_image img {
	-o-object-fit: cover;
	aspect-ratio: 180/120;
	border-radius: 4px;
	object-fit: cover;
}

.top_news .news_details {
	padding-left: 15px;
	transition: 0.3s color;
	width: 100%;
	color: #151515;
}

.top_news .news_link:hover .news_details {
	color: #0e8bd9;
}

.top_news .news_details .news_date {
	font-size: 14px;
	font-weight: bold;
}

.top_news .news_texts {
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	display: -webkit-box;
	font-size: 16px;
	font-weight: 700;
	letter-spacing: 0.03em;
	line-height: 1.5;
	margin-top: 11px;
	overflow: hidden;
	padding-right: 50px;
	position: relative;
	text-overflow: ellipsis;
	width: 100%;
}

.top_news .news_texts span {
	background-color: #151515;
	font-weight: bold;
	height: 2px;
	position: absolute;
	right: 25px;
	top: 8px;
	transition: 0.3s right;
	width: 15px;
}

.top_news .news_texts span::after {
	border-right: 2px solid #151515;
	border-top: 2px solid #151515;
	content: "";
	height: 10px;
	position: absolute;
	right: 0px;
	top: 50%;
	transform: translateY(-50%) rotate(45deg);
	transition: 0.3s border-color;
	width: 10px;
}

.top_news .news_link:hover .news_texts span {
	background-color: #0e8bd9;
	right: 5px;
}

.top_news .news_link:hover .news_texts span::after {
	border-color: #0e8bd9;
}

@media screen and (max-width: 767px) {
	.top_news {
		min-width: 100%;
		padding-top: 70px;
	}

	.news_inner {
		flex-direction: column;
		margin: 0 auto;
		max-width: 640px;
		padding: 0 20px;
	}

	.top_news .news_intro {
		padding: 0;
		width: 100%;
	}

	.top_news .news_list {
		margin-top: 21px;
		width: 100%;
	}

	.top_news .news_title {
		font-size: 26px;
	}

	.news_description {
		font-size: 14px;
		margin-top: 21px;
	}

	.top_news .news_more_link {
		margin-top: 43px;
		color: #fff;
	}

	.top_news .button:hover {
		color: #fff;
		background-color: #0e8bd8;
	}

	.top_news .button:hover span {
		background-color: #fff;
		right: 20px;
	}

	.top_news .button:hover span::after {
		border-color: #fff;
	}

	.top_news .news_more_link.u_desktop {
		display: none;
	}

	.top_news .news_more_link.u_mobile {
		display: block;
	}

	.top_news .button_wrap {
		margin: 0 auto;
		max-width: 310px;
	}

	.top_news .news_item {
		border: none;
		padding: 0;
	}

	.top_news .news_item:not(:first-of-type) {
		padding-top: 13px;
	}

	.top_news .news_link .news_image {
		width: 37.1428571429%;
	}

	.top_news .news_details {
		padding-left: 14px;
	}

	.top_news .news_texts {
		font-size: 14px;
		margin-top: 5px;
		padding-right: 0;
	}

	.top_news .news_texts br {
		display: none;
	}

	.top_news .news_texts span {
		display: none;
	}
}

/* TOP owner */

.top_owner {
	background-color: #fffff8;
	min-width: 1400px;
	padding: 115px 0;
}

.top_owner .intro {
	display: flex;
}

.top_owner .image_wrap {
	max-width: 500px;
	width: 100%;
}

.top_owner .image_wrap img {
	-o-object-fit: cover;
	aspect-ratio: 500/400;
	object-fit: cover;
}

.top_owner .intro_wrap {
	display: flex;
	flex-direction: column;
	justify-content: center;
	max-width: 640px;
	padding-left: 40px;
	padding-right: 30px;
	width: 100%;
}

.top_owner .title {
	color: #4d4d4d;
	font-size: 18px;
	font-weight: 900;
	letter-spacing: 0.09em;
	line-height: 2;
}

.top_owner .subtitle {
	color: #0e8bd9;
	font-size: 34px;
	font-weight: 900;
	letter-spacing: 0.09em;
	line-height: 1.0588235294;
	margin-top: 10px;
}

.top_owner .description {
	color: #4d4d4d;
	font-size: 16px;
	letter-spacing: 0.04em;
	line-height: 1.4375;
	margin-top: 28px;
}

.top_owner .button_wrap {
	margin-top: 40px;
	max-width: 350px;
	width: 100%;
}

.top_owner .links {
	grid-gap: 15px;
	display: grid;
	gap: 15px;
	grid-template-columns: repeat(3, 1fr);
	margin-top: 50px;
}

.top_owner .link_item {
	border-radius: 10px;
	position: relative;
	transition: transform 0.3s ease-in-out;
}

.top_owner .link_item:hover {
	transform: scale(1.05);
}

.top_owner .card_link {
	display: block;
}

.top_owner .card_image {
	-o-object-fit: cover;
	aspect-ratio: 370/180;
	border-radius: 10px;
	object-fit: cover;
}

@media screen and (max-width: 767px) {
	.top_owner {
		min-width: 100%;
		padding-bottom: 45px;
		padding-top: 56px;
	}

	.top_owner .intro {
		flex-direction: column;
	}

	.top_owner .intro_sp {
		display: block;
	}

	.top_owner .image_wrap {
		margin: 0 auto;
		margin-top: 20px;
	}

	.top_owner .image_wrap img {
		aspect-ratio: 350/180;
	}

	.top_owner .intro_wrap {
		margin-top: 14px;
		padding: 0;
	}

	.top_owner .title {
		font-size: 16px;
		line-height: 2.25;
	}

	.top_owner .subtitle {
		font-size: 26px;
		letter-spacing: 0.15em;
		margin-top: -1px;
	}

	.top_owner .description {
		font-size: 14px;
		letter-spacing: 0.03em;
		line-height: 1.5;
		margin-top: 0;
	}

	.top_owner .button_wrap {
		margin: 0 auto;
		margin-top: 28px;
		max-width: 310px;
	}

	.top_owner .links {
		gap: 11px;
		grid-template-columns: repeat(1, 1fr);
		margin: 48px auto 0;
		max-width: 500px;
	}

	.top_owner .card_image {
		aspect-ratio: 350/170;
	}
}

/* TOP recruitment */

.top_recruitment_section {
	margin: 0 auto;
	max-width: 1440px;
	min-width: 1400px;
	padding-top: 90px;
	position: relative;
}

.top_recruitment_section .container {
	margin: 0 auto;
}

.top_recruitment_section .image_wrapper {
	aspect-ratio: 780/420;
	border-radius: 0 10px 10px 0;
	content: "";
	height: auto;
	left: 0;
	max-width: 780px;
	overflow: hidden;
	position: absolute;
	top: 0;
	width: 54.1666666667%;
	z-index: -1;
}

.top_recruitment_section .image_wrapper .main_image {
	-o-object-fit: cover;
	aspect-ratio: 780/420;
	object-fit: cover;
}

.top_recruitment_section .content_wrapper {
	background-color: #eff6ff;
	border-radius: 10px 0 0 10px;
	margin-left: auto;
	max-width: 780px;
	padding: 55px 0 40px 70px;
	width: 54.1666666667%;
}

.top_recruitment_section .info_tag {
	font-size: 16px;
	font-weight: 700;
	letter-spacing: 0.13em;
	line-height: 2.1875;
	padding-left: 24px;
	position: relative;
}

.top_recruitment_section .info_tag::before {
	background-color: #0e8bd9;
	border-radius: 50%;
	content: "";
	height: 14px;
	left: 0;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 14px;
}

.top_recruitment_section .headline {
	color: #0e8bd9;
	font-size: 34px;
	font-weight: 900;
	letter-spacing: 0.05em;
	line-height: 1.3529411765;
	margin-top: 12px;
}

.top_recruitment_section .description {
	color: #4d4d4d;
	font-size: 16px;
	letter-spacing: 0.04em;
	line-height: 1.5625;
	margin-top: 23px;
	max-width: 580px;
	padding-right: 20px;
}

.top_recruitment_section .button_wrap {
	margin-left: auto;
	margin-right: 150px;
	margin-top: 25px;
	max-width: 250px;
	width: 100%;
	font-weight: bold;
}

@media screen and (max-width: 767px) {
	.top_recruitment_section {
		min-width: 100%;
		padding-top: 210px;
	}

	.top_recruitment_section .image_wrapper {
		aspect-ratio: 370/260;
		max-width: 500px;
		width: calc(100% - 20px);
	}

	.top_recruitment_section .image_wrapper .main_image {
		aspect-ratio: 370/260;
	}

	.top_recruitment_section .content_wrapper {
		max-width: 500px;
		padding: 33px 25px 38px 48px;
		width: calc(100% - 20px);
	}

	.top_recruitment_section .info_tag {
		font-size: 14px;
		padding-left: 0;
	}

	.top_recruitment_section .info_tag::before {
		left: -28px;
	}

	.top_recruitment_section .headline {
		font-size: 22px;
		line-height: 1.4545454545;
		margin-top: 8px;
	}

	.top_recruitment_section .description {
		font-size: 14px;
		line-height: 1.6428571429;
		margin-top: 22px;
		padding-right: 0;
	}

	.top_recruitment_section .button_wrap {
		margin-top: 30px;
		max-width: 282px;
		width: 100%;
	}

	.top_recruitment_section .button {
		padding: 10px 0 10px 17px;
	}
}

/* Reizã‚·ãƒªãƒ¼ã‚º */

.common_renovation_examples {
	background-color: #fffff8;
	min-width: 1400px;
	padding-bottom: 108px;
	padding-top: 160px;
	text-align: center;
}

.renovation_container {
	margin: 0 auto;
	max-width: 1440px;
}

.common_renovation_examples .title_wrap {
	margin: 0 auto;
	width: 150px;
}

.common_renovation_examples .title_wrap img {
	-o-object-fit: contain;
	aspect-ratio: 149/106;
	object-fit: contain;
}

.renovation_title {
	border-bottom: 3px solid #151515;
	border-top: 3px solid #151515;
	font-size: 36px;
	font-weight: 900;
	letter-spacing: 0.06em;
	line-height: 1;
	margin: 0 auto;
	margin-top: 31px;
	max-width: 600px;
	padding: 25px 0;
}

.renovation_subtitle {
	color: #4d4d4d;
	font-size: 16px;
	font-weight: 500;
	letter-spacing: 0.03em;
	line-height: 2.25;
	margin-top: 25px;
}

.common_renovation_examples .renovation_swiper {
	margin-top: 33px;
	position: relative;
}

.renovation_swiper a:link,
.renovation_swiper a:visited,
.renovation_swiper a:hover{
	color: inherit;
}

.renovation_list {
	display: flex;
	list-style: none;
	margin: 0;
	padding: 0;
}

.renovation_item {
	display: flex;
	justify-content: center;
	width: 100%;
}

.renovation_images {
	display: flex;
	gap: 0 20px;
	width: 300px;
}

.renovation_images .inbox {
	display: grid;
	gap: 8px 0;
	text-align: center;
	position: relative;
}

.renovation_images .inbox .head {
	font-size: 14px;
	letter-spacing: .05em;
	font-weight: 900;
}

.renovation_images .inbox .img img {
	width: 100%;
	aspect-ratio: 2/3;
	object-fit: cover;
	border-radius: 6px;
}

.renovation_images .inbox.before::before {
	content: "";
	mask-image: url(../image/reiz_arrow.svg);
	mask-size: contain;
	mask-repeat: no-repeat;
	width: 52px;
	aspect-ratio: 26/21;
	background: #A4C614;
	position: absolute;
	top: 50%;
	right: -35px;
	translate: 0 -50%;
	z-index: 1;
}

.renovation_card {
	background-color: #fff;
	border-radius: 10px;
	box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
	display: flex;
	padding: 20px;
	padding: 20px;
	text-align: left;
	width: 100%;
}

.common_renovation_examples .content {
	margin: 11px 0 0 31px;
	width: 50.1492537313%;
}

.category_label {
	background-color: #a4c614;
	border-radius: 6px;
	color: #fff;
	display: inline-block;
	font-size: 14px;
	padding: 5px 9px;
	font-weight: 700;
}

.common_renovation_examples .renovation_head {
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	display: -webkit-box;
	font-size: 19px;
	font-weight: 900;
	letter-spacing: 0.04em;
	line-height: 1.2631578947;
	margin-top: 23px;
	overflow: hidden;
	text-overflow: ellipsis;
}

.common_renovation_examples .text {
    color: #4d4d4d;
    font-size: 14px;
    letter-spacing: 0.03em;
    line-height: 1.4285714286;
    margin-top: 16px;
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 5;
}

.common_renovation_examples .renovation_swiper .swiper {
	padding-bottom: 15px;
}

.common_renovation_examples .swiper-pagination {
	bottom: 10px;
}

.common_renovation_examples .swiper-button-prev,
.common_renovation_examples .swiper-button-next {
	bottom: -60px;
	color: #a0a0a0;
	display: flex;
	font-size: 16px;
	font-weight: 900;
	height: 30px;
	justify-content: flex-start;
	letter-spacing: 0.1em;
	line-height: 2.25;
	position: absolute;
	top: auto;
	transition: 0.3s color;
	width: 74px;
}

.common_renovation_examples .swiper-button-prev:hover,
.common_renovation_examples .swiper-button-next:hover {
	color: #a4c614;
}

.common_renovation_examples .swiper-button-prev:hover::after,
.common_renovation_examples .swiper-button-next:hover::after {
	background-color: #a4c614;
}

.common_renovation_examples .swiper-button-prev {
	flex-direction: row-reverse;
	left: 43%;
}

.common_renovation_examples .swiper-button-next {
	justify-content: flex-start;
	right: 43%;
}

.common_renovation_examples .swiper-button-prev::after,
.common_renovation_examples .swiper-button-next::after {
	background-color: #a0a0a0;
	border-radius: 50%;
	content: "";
	height: 30px;
	left: 0;
	position: absolute;
	transition: 0.3s background-color;
	width: 30px;
}

.common_renovation_examples .swiper-button-next::after {
	left: auto;
	right: 0;
}

.common_renovation_examples .swiper-button-prev::before,
.common_renovation_examples .swiper-button-next::before {
	border-bottom: 9px solid transparent;
	border-left: 0;
	border-right: 10px solid #ffffff;
	border-style: solid;
	border-top: 9px solid transparent;
	content: "";
	height: 0;
	left: 8px;
	position: absolute;
	width: 0;
	z-index: 1;
}

.common_renovation_examples .swiper-button-next::before {
	left: auto;
	right: 8px;
	transform: rotate(180deg);
}

.common_renovation_examples .button_wrap {
	margin: 0 auto;
	margin-top: 97px;
	max-width: 370px;
	width: 100%;
}

.common_renovation_examples .button {
	background-color: #a4c614;
	border: 1px solid #a4c614;
	border-radius: 8px;
	color: #fff;
	padding: 12px 0 14px 25px;
	text-align: left;
	transition: 0.3s color, 0.3s background-color;
	width: 100%;
	font-weight: 700;
}

.common_renovation_examples .button:hover {
	background-color: #fff;
	color: #a4c614;
}

@media screen and (max-width: 767px) {
	.common_renovation_examples {
		min-width: 100%;
		padding-bottom: 75px;
		padding-top: 70px;
	}

	.renovation_container {
		max-width: 600px;
		padding: 0 20px;
	}

	.common_renovation_examples .title_wrap {
		width: 91px;
	}

	.common_renovation_examples .title_wrap img {
		aspect-ratio: 91/65;
	}

	.renovation_title {
		font-size: 20px;
		letter-spacing: 0;
		margin-top: 22px;
		max-width: 301px;
		padding: 10px 0;
	}

	.renovation_subtitle {
		font-size: 14px;
		line-height: 1.4285714286;
		margin-top: 21px;
	}

	.common_renovation_examples .renovation_swiper {
		margin-top: 16px;
	}

	.renovation_images {
		width: 100%;
	}

	.renovation_images .inbox {
		display: block;
	}

	.renovation_images .inbox .head {
		display: none;
	}

	.renovation_images .inbox .img img {
		aspect-ratio: 1/1;
	}

	.renovation_images .inbox.before::before {
		width: 13.3vw;
		right: -9.5vw;
	}

	.renovation_card {
        flex-direction: column;
        padding: 10px 10px 20px 10px;
        box-shadow: 0 1px 2px rgba(0, 0, 0, 0.16);
    }

	.common_renovation_examples .content {
		margin: 14px 0 0 0;
		width: 100%;
	}

	.common_renovation_examples .renovation_head {
		font-size: 17px;
		letter-spacing: 0.01em;
		line-height: 1.4117647059;
		margin-top: 8px;
	}

	.common_renovation_examples .text {
		font-size: 13px;
		letter-spacing: 0.02em;
		line-height: 1.5384615385;
		margin-top: 10px;
		-webkit-line-clamp: 4;
	}

	.common_renovation_examples .swiper-button-prev,
	.common_renovation_examples .swiper-button-next {
		bottom: -38px;
		font-size: 14px;
		height: 22px;
		width: 60px;
	}

	.common_renovation_examples .swiper-button-prev {
		left: 30%;
	}

	.common_renovation_examples .swiper-button-next {
		right: 30%;
	}

	.common_renovation_examples .swiper-button-prev::after,
	.common_renovation_examples .swiper-button-next::after {
		height: 22px;
		width: 22px;
	}

	.common_renovation_examples .swiper-button-prev::before,
	.common_renovation_examples .swiper-button-next::before {
		border-bottom: 5px solid transparent;
		border-right: 7px solid #ffffff;
		border-top: 5px solid transparent;
		left: 6px;
	}

	.common_renovation_examples .swiper-button-next::before {
		left: auto;
		right: 6px;
	}

	.common_renovation_examples .button_wrap {
		margin-top: 70px;
		max-width: 310px;
	}

	.common_renovation_examples .button {
		font-size: 14px;
		padding: 10px 0 10px 15px;
	}

	.common_renovation_examples .button:hover {
		background-color: #a4c614;
		color: #fff;
	}

	.common_renovation_examples .button:hover span {
		right: 20px;
	}
}

/* ä¸‹å±¤ãƒšãƒ¼ã‚¸ company */

.subpage_company {
	min-width: 1400px;
	padding: 80px 0;
}

.company_inner {
	margin: auto;
	max-width: 850px;
	padding: 0 25px;
	width: 100%;
}

.subpage_company .title {
	font-size: 32px;
	font-weight: 300;
	letter-spacing: 0.06em;
	line-height: 1.5;
	text-align: center;
}

.subpage_company .profile {
	margin-top: 30px;
}

.profile_list {
	border-bottom: 1px solid #000;
	display: flex;
	flex-wrap: wrap;
	font-size: 16px;
	letter-spacing: 0.08em;
	line-height: 1.3;
	padding-bottom: 25px;
}

.profile_list+.profile_list {
	margin-top: 25px;
}

.profile_list .text_indent{
	margin-left: 1em;
	display:inline-block;
}
.profile_term {
	font-size: 16px;
	font-weight: 500;
	letter-spacing: 0.03em;
	line-height: 1.5;
	max-width: 200px;
	width: 100%;
}

.subpage_company .profile_description {
	font-size: 16px;
	font-weight: 300;
	letter-spacing: 0.03em;
	line-height: 2;
	width: calc(100% - 200px);
}

.subpage_company .profile_description .text:not(:first-of-type) {
	margin-top: 20px;
}
/*ã‚¢ã‚¤ã‚³ãƒ³*/
.company_inner .logo{
	align-items: center;
	justify-content:space-between;
	gap: 5%;
	margin-top: 40px;
}
.company_inner .flex .logo_social{
	width: 45%;
}

.company_inner .flex .logo_sdgs{
	width: 40%;
}
.company_inner .flex .logo_area img{
	width: 100%;
}

@media screen and (max-width: 767px) {
	.subpage_company {
		min-width: 100%;
		padding: 50px 0;
	}

	.company_inner {
		max-width: 600px;
		padding: 0 20px;
	}

	.subpage_company .title {
		font-size: 24px;
	}

	.profile_list {
		flex-direction: column;
		font-size: 13px;
		padding-bottom: 15px;
	}

	.profile_list+.profile_list {
		margin-top: 15px;
	}

	.profile_term {
		font-size: 14px;
		max-width: 100px;
	}

	.subpage_company .profile_description {
		font-size: 14px;
		margin-top: 15px;
		width: 100%;
	}

	.subpage_company .profile_description .text:not(:first-of-type) {
		margin-top: 15px;
	}
}

/* companyãƒšãƒ¼ã‚¸ã€€ã‚®ãƒ£ãƒ©ãƒªãƒ¼ */

.subpage_gallery {
	min-width: 1400px;
	padding-bottom: 80px;
}

.subpage_gallery .title {
	font-size: 32px;
	font-weight: 300;
	letter-spacing: 0.06em;
	line-height: 1.5;
	text-align: center;
}

.subpage_gallery .content {
	margin-top: 50px;
}

.subpage_gallery .grid_list {
	grid-gap: 20px;
	display: grid;
	gap: 20px;
	grid-template-columns: repeat(3, 1fr);
}

.subpage_gallery .grid_item {
	display: flex;
	align-items: center;
	justify-content: center;
}

.subpage_gallery .wraps {
	max-width: 360px;
}

.subpage_gallery .wraps img {
	-o-object-fit: cover;
	aspect-ratio: 347/460;
	object-fit: cover;
}

@media screen and (max-width: 767px) {
	.subpage_gallery {
		min-width: 100%;
		padding-bottom: 50px;
	}

	.subpage_gallery .title {
		font-size: 24px;
	}

	.subpage_gallery .content {
		overflow: hidden;
		margin: 50px auto 0;
		max-width: 500px;
	}

	.subpage_gallery .grid_list {
		grid-template-columns: repeat(1, 1fr);
	}
}

/* ä¸‹å±¤ãƒšãƒ¼ã‚¸ MV */

.subpage_hero {
	height: 310px;
	min-width: 1400px;
	position: relative;
}

.subpage_hero .hero_image {
	background-image: url(../image/owner-mv.jpg);
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	content: "";
	height: 100%;
	left: 0;
	position: absolute;
	top: 0;
	width: 100%;
	z-index: -2;
}

.subpage_hero .hero_image::after {
	background-color: rgba(21, 21, 21, 0.4);
	content: "";
	height: 100%;
	left: 0;
	position: absolute;
	top: 0;
	width: 100%;
	z-index: -1;
}

.subpage_hero .hero_content {
	align-content: center;
	display: flex;
	flex-direction: column;
	height: 100%;
	justify-content: center;
	margin: 0 auto;
	width: -moz-fit-content;
	width: fit-content;
}

.subpage_hero .hero_title {
	color: #fff;
	font-family: "DIN Condensed", sans-serif;
	font-size: 30px;
	font-weight: bold;
	letter-spacing: 0.07em;
	line-height: 0.6333333333;
	text-align: center;
	text-transform: uppercase;
}

.subpage_hero .hero_subtitle {
	color: #fff;
	font-size: 32px;
	font-weight: 900;
	letter-spacing: 0.06em;
	line-height: 1.125;
	margin-top: 8px;
	text-align: center;
}

@media screen and (max-width: 767px) {
	.subpage_hero {
		height: 200px;
		min-width: 100%;
	}

	.subpage_hero .hero_title {
		font-size: 24px;
	}

	.subpage_hero .hero_subtitle {
		font-size: 28px;
	}
}

/* ãƒ‘ãƒ³ã‚¯ã‚º */

.breadcrumb,
.breadcrumbs {
	align-items: center;
	display: flex;
	justify-content: flex-end;
	margin: 0 auto;
	margin-top: 20px;
	max-width: 1390px;
	min-width: 1400px;
	padding: 0 25px;
	width: 100%;
}

.breadcrumbs span {
	display: flex;
	font-size: 14px;
	font-weight: 500;
	letter-spacing: 0.03em;
	line-height: 1.5;
	text-align: right;
}

.breadcrumbs .current-item {
	color: #0e8bd9;
	position: relative;
	/* padding-left: 15px; */
}

/* .breadcrumbs .current-item::before {
  content: ">";
  left: 5px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  color: #0e8bd9;
} */

.breadcrumbs a {
	color: #a0a0a0;
	display: block;
	transition: 0.3s color;
}

.breadcrumb_texts .link:hover,
.breadcrumbs a:hover {
	color: #0e8bd9;
}

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

	.breadcrumb,
	.breadcrumbs {
		min-width: 100%;
	}

	.breadcrumb_texts,
	.breadcrumbs span {
		font-size: 10px;
	}
}

/* ä¸å‹•ç”£ã‚ªãƒ¼ãƒŠãƒ¼ãƒšãƒ¼ã‚¸ã€€ãƒ—ãƒ©ãƒ³ */

.subpage_plans {
	min-width: 1400px;
	padding-bottom: 100px;
}

.subpage_plans .title {
	font-size: 32px;
	font-weight: 700;
	letter-spacing: 0.06em;
	line-height: 1.125;
	text-align: center;
}

.subpage_plans .plans_grid {
	grid-gap: 20px;
	display: grid;
	gap: 20px;
	grid-template-columns: repeat(2, 1fr);
	margin-top: 30px;
}

.subpage_plans .plan_card {
	border-radius: 10px;
	box-shadow: 0px 1px 2px #707070;
	display: flex;
	flex-direction: column;
	height: 100%;
	padding: 30px 20px 40px;
}

.subpage_plans .plan_icon {
	border: 1px solid #151515;
	border-radius: 50%;
	height: 150px;
	margin: 0 auto;
	overflow: hidden;
	width: 150px;
}

.subpage_plans .plan_icon img {
	-o-object-fit: contain;
	aspect-ratio: 100/100;
	object-fit: contain;
	width: 100%;
}

.subpage_plans .plan_title {
	font-size: 26px;
	font-weight: 500;
	letter-spacing: 0.03em;
	line-height: 1.5;
	margin-top: 50px;
	text-align: center;
	color: #0e8bd9;
}

.subpage_plans .plan_description {
	font-size: 15px;
	font-weight: 500;
	letter-spacing: 0.03em;
	line-height: 1.5;
	margin-top: 30px;
	text-align: center;
}

.subpage_plans .button_wrap {
	margin: 50px auto 0;
	max-width: 310px;
	width: 100%;
}

.subpage_plans .button {
	border-radius: 6px;
	padding-left: 0;
	text-align: center;
	color: #fff;
	cursor: pointer;
}

.subpage_plans .button:hover {
	color: #0e8bd8;
}

.page_tenants .subpage_plans {
	min-width: auto;
}

.page_tenants .subpage_plans .plans_grid {
	grid-template-columns: repeat(3, 1fr);
}

.page_tenants .subpage_plans .plan_title {
	font-size: 24px;
}

@media screen and (max-width: 767px) {
	.subpage_plans {
		min-width: 100%;
		padding-bottom: 50px;
	}

	.subpage_plans .title {
		font-size: 24px;
	}

	.subpage_plans .plans_grid {
		grid-template-columns: repeat(1, 1fr);
	}

	.subpage_plans .plan_title {
		font-size: 24px;
		margin-top: 30px;
	}

	.subpage_plans .button_wrap {
		max-width: 280px;
	}
}

/* ä¸‹å±¤ãƒšãƒ¼ã‚¸ company ä»£è¡¨è€…çµŒæ­´ */

.subpage_profile {
	min-width: 1400px;
	padding: 80px 0;
}

.subpage_profile .profile_title {
	font-size: 32px;
	font-weight: 300;
	letter-spacing: 0.06em;
	line-height: 1.5;
	text-align: center;
}

.subpage_profile .profile_head {
	display: flex;
	gap: 30px;
	margin-top: 30px;
}

.subpage_profile .img_wrap {
	width: 300px;
}

.subpage_profile .img_wrap img {
	-o-object-fit: cover;
	aspect-ratio: 269/407;
	object-fit: cover;
}

.subpage_profile .profile_summary {
	width: calc(100% - 330px);
}

.subpage_profile .profile_description {
	width: 100%;
}

.subpage_profile .profile_description .text {
	font-size: 15px;
	font-weight: 500;
	letter-spacing: 0.03em;
	line-height: 1.8;
}

.subpage_profile .name {
	font-size: 20px;
	font-weight: bold;
	letter-spacing: 0.03em;
	line-height: 1.5;
	margin-top: 15px;
	text-align: center;
}

.subpage_profile .profile_description .text:not(:first-of-type) {
	margin-top: 20px;
}

.profile_details {
	display: flex;
	gap: 30px;
	margin-top: 50px;
}

.profile_details .second_list {
	margin-top: 30px;
}

.profile_details .details_title {
	font-size: 18px;
	font-weight: bold;
	letter-spacing: 0.03em;
	line-height: 2;
}

.profile_details li {
	font-size: 14px;
	font-weight: 500;
	letter-spacing: 0.03em;
	line-height: 1.5;
	margin-top: 5px;
}

.profile_details .circle {
	margin-top: 10px;
	padding-left: 15px;
	position: relative;
	letter-spacing: 0.03em;
	/* color: #4d4d4d; */
}

.profile_details .circle::before {
	background-color: #151515;
	border-radius: 50%;
	content: "";
	height: 10px;
	left: 0;
	position: absolute;
	top: 0.45em;
	width: 10px;
}

.profile_details .margin {
	margin-top: 20px;
}

@media screen and (max-width: 767px) {
	.subpage_profile {
		min-width: 100%;
		padding: 50px 0;
	}

	.subpage_profile .profile_title {
		font-size: 24px;
	}

	.subpage_profile .profile_head {
		flex-direction: column;
	}

	.subpage_profile .img_wrap {
		margin: 0 auto;
	}

	.subpage_profile .profile_summary {
		width: 100%;
	}

	.subpage_profile .profile_description .text {
		font-size: 14px;
		letter-spacing: 0.03em;
		/* color: #4d4d4d; */
	}

	.subpage_profile .name {
		font-size: 18px;
	}

	.subpage_profile .profile_description .text:not(:first-of-type) {
		margin-top: 15px;
	}

	.profile_details {
		flex-direction: column;
	}

	.profile_details .details_title {
		font-size: 16px;
	}

	.profile_details li {
		font-size: 14px;
	}
}

/* ä¸‹å±¤ãƒšãƒ¼ã‚¸ã€€5ã¤ã®äº‹æ¥­å†…å®¹ */

.common_services {
	min-width: 1400px;
	padding-bottom: 155px;
	padding-top: 151px;
}

.common_services .title {
	font-size: 32px;
	font-weight: 900;
	letter-spacing: 0.06em;
	line-height: 1.125;
}

.common_services .service_link {
	color: #4d4d4d;
	transition: 0.3s color;
}

.common_services .service_link:hover {
	color: #0e8bd8;
}

.common_services .grid_1 {
	grid-gap: 20px;
	display: grid;
	gap: 20px;
	grid-template-columns: repeat(2, 1fr);
	margin-top: 31px;
}

.common_services .grid_1 img {
	-o-object-fit: cover;
	aspect-ratio: 560/270;
	border-radius: 6px;
	object-fit: cover;
}

.common_services .grid_1 .service_item,
.common_services .grid_2 .service_item {
	grid-gap: 0;
	display: grid;
	gap: 0;
	grid-row: span 3;
	grid-template-rows: subgrid;
}

.common_services .grid_1 .service_title {
	font-size: 24px;
	font-weight: 900;
	letter-spacing: 0.09em;
	line-height: 1.125;
	margin-top: 23px;
}

.common_services .grid_1 .service_description {
	border-top: 2px solid #151515;
	border-top-style: dotted;
	border-top-width: 3px;
	color: #4d4d4d;
	font-size: 15px;
	font-weight: 500;
	letter-spacing: 0.03em;
	line-height: 1.4;
	margin-top: 20px;
	padding-top: 16px;
}

.common_services .grid_2 {
	grid-gap: 15px;
	display: grid;
	gap: 15px;
	grid-template-columns: repeat(3, 1fr);
	margin-top: 60px;
}

.common_services .grid_2 img {
	-o-object-fit: cover;
	aspect-ratio: 370/200;
	border-radius: 6px;
	object-fit: cover;
}

.common_services .grid_2 .service_title {
	font-size: 18px;
	font-weight: 900;
	letter-spacing: 0.09em;
	line-height: 1.5;
	margin-top: 16px;
}

.common_services .grid_2 .service_description {
	border-top: 2px solid #151515;
	border-top-style: dotted;
	border-top-width: 3px;
	color: #4d4d4d;
	font-size: 14px;
	font-weight: 500;
	letter-spacing: 0.03em;
	line-height: 1.5;
	margin-top: 24px;
	padding-top: 18px;
}

@media screen and (max-width: 767px) {
	.subpage_services {
		min-width: 100%;
	}

	.subpage_services .container {
		margin: 0 auto;
	}

	.subpage_services .title {
		font-size: 28px;
		line-height: 0.875;
	}

	.subpage_services .grid_1 {
		grid-template-columns: repeat(1, 1fr);
	}

	.subpage_services .grid_1 .service_title {
		font-size: 20px;
		line-height: 0.7407407407;
	}

	.subpage_services .grid_1 .service_description {
		font-size: 13px;
	}

	.subpage_services .grid_2 {
		grid-template-columns: repeat(1, 1fr);
	}

	.subpage_services .grid_2 .service_title {
		font-size: 20px;
		line-height: 0.6666666667;
	}

	.subpage_services .grid_2 .service_description {
		font-size: 12px;
	}
}

/* ãŠå®¢æ§˜ã®ãŠå£° */

.common_testimonials {
	min-width: 1400px;
	padding-bottom: 153px;
	padding-top: 142px;
}

.common_testimonials.subpage_common_testimonials {
	padding-bottom: 70px;
	padding-top: 143px;
}

.common_testimonials .inners {
	margin: 0 auto;
	max-width: 1240px;
}

.common_testimonials .intro {
	align-items: flex-end;
	display: flex;
	justify-content: space-between;
	max-width: 1160px;
	padding-right: 20px;
}

.common_testimonials .title {
	color: #0e8bd9;
	font-size: 42px;
	font-weight: 900;
	letter-spacing: 0.06em;
	line-height: 0.8571428571;
}

.common_testimonials .description {
	color: #4d4d4d;
	font-size: 16px;
	font-weight: 500;
	letter-spacing: 0.03em;
	margin-top: 21px;
}

.common_testimonials .button_wrap {
	width: 310px;
}

.common_testimonials .swiper {
	padding: 0 5px 60px;
}

.common_testimonials_swiper {
	margin-top: 40px;
	position: relative;
}

.common_testimonials_swiper .item {
	border-radius: 10px;
	box-shadow: 0px 0 1px #707070;
}

.common_testimonials_swiper .swiper-wrapper.list {
	padding: 0 2px 3px 1px;
}

.common_testimonials_swiper .swiper-slide .img_wrap {
	width: 100%;
}

.common_testimonials_swiper .swiper-slide img {
	-o-object-fit: cover;
	aspect-ratio: 310/170;
	border-radius: 10px 10px 0 0px;
	object-fit: cover;
	width: 100%;
}

.swiper-pagination {
	display: block !important;
	position: relative;
	bottom: 10px;
	z-index: 10;
	text-align: center;
}

.swiper-pagination .swiper-pagination-bullet {
	background-color: #c6cf00;
	width: 10px;
	height: 10px;
	border-radius: 50%;
	opacity: 1;
}

.common_testimonials_swiper .swiper-pagination {
	bottom: -35px;
	left: -80px;
	width: 100%;
	display: block;
}

.common_testimonials_swiper .swiper-pagination .swiper-pagination-bullet {
	background-color: #f4f4f4;
	border-radius: 0;
	border-radius: initial;
	height: 0.375rem;
	transition: 0.3s;
	width: 80px;
}

.common_testimonials_swiper .swiper-pagination .swiper-pagination-bullet-active {
	background: #c6cf00;
}

.common_testimonials_swiper .swiper-button-prev::before,
.common_testimonials_swiper .swiper-button-next::before {
	border-right: 0.1875rem solid #333;
	border-top: 0.1875rem solid #333;
	content: "";
	height: 0.625rem;
	left: 50%;
	position: absolute;
	top: 50%;
	transform: translate(-50%, -50%);
	width: 0.625rem;
}

.common_testimonials_swiper .swiper-button-prev::before {
	transform: translate(-50%, -50%) rotate(-135deg);
}

.common_testimonials_swiper .swiper-button-next::before {
	transform: translate(-50%, -50%) rotate(45deg);
}

.common_testimonials .item {
	position: relative;
}

.common_testimonials .card_link {
	content: "";
	display: block;
	height: 100%;
	position: absolute;
	width: 100%;
}

.common_testimonials .item:hover .name {
	border-color: #0e8bd9;
	color: #0e8bd9;
}

.common_testimonials .item:hover .button {
	background-color: #0e8bd9;
	color: #fff;
}

.common_testimonials .item:hover .button span {
	background-color: #fff;
	right: 15px;
}

.common_testimonials .item:hover .button span::after {
	border-color: #fff;
}

.common_testimonials .details {
	padding: 12px 20px 20px;
}

.common_testimonials .location {
	font-size: 14px;
	letter-spacing: 0.01em;
	line-height: 2.5714285714;
}

.common_testimonials .name {
	border-bottom: 1px solid #d9d9d9;
	font-size: 20px;
	font-weight: 700;
	letter-spacing: 0.01em;
	line-height: 1.8;
	margin-top: -5px;
	padding-bottom: 10px;
	transition: 0.3s color, 0.3s border-color;
}

.common_testimonials .info_content {
	margin-top: 14px;
}

.common_testimonials .info {
	color: #4d4d4d;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.5;
}

.common_testimonials .more_button {
	margin-top: 14px;
	max-width: 270px;
}

.common_testimonials .more_button .button_light_blue.button {
	font-size: 14px;
	padding-bottom: 6px;
	padding-top: 6px;
}

.tab-nav {
	align-items: center;
	display: flex;
	justify-content: center;
	margin: 0 auto;
	margin-top: 24px;
	width: -moz-fit-content;
	width: fit-content;
}

.tab-nav button {
	background-color: #f4f4f4;
	border-radius: 0;
	border-radius: initial;
	cursor: pointer;
	height: 6px;
	margin: 0 5px;
	width: 80px;
}

.tab-nav button.active {
	background-color: #c6cf00;
}

@media screen and (max-width: 767px) {
	.common_testimonials {
		min-width: 100%;
		padding-bottom: 70px;
		padding-top: 74px;
	}

	.common_testimonials.subpage_common_testimonials {
		padding-bottom: 80px;
		padding-top: 0px;
	}

	.common_testimonials .inners {
		margin: 0 auto;
		max-width: 500px;
		padding-left: 20px;
		padding-right: 20px;
	}

	.common_testimonials .title {
		font-size: 28px;
		line-height: 1.2857142857;
	}

	.common_testimonials .description {
		font-size: 14px;
		margin-top: 18px;
	}

	.common_testimonials .button_wrap {
		margin: 0 auto;
		margin-top: 35px;
	}

	.common_testimonials .swiper {
		padding: 0;
	}

	.common_testimonials_swiper {
		margin-top: 20px;
	}

	.common_testimonials_swiper .item {
		display: flex;
	}

	.common_testimonials_swiper .swiper-wrapper {
		display: flex;
		flex-direction: column;
		gap: 20px;
		justify-content: space-between;
		overflow: hidden;
		width: 100%;
	}

	.common_testimonials_swiper .swiper-slide {
		display: flex;
		flex-direction: row;
		height: 43.5897435897vw;
		max-height: 200px;
		overflow: hidden;
	}

	.common_testimonials_swiper .swiper-slide .img_wrap {
		width: 37.1428571429%;
	}

	.common_testimonials_swiper .swiper-slide img {
		aspect-ratio: 130/170;
		border-radius: 10px 0 0 10px;
	}

	.common_testimonials .details {
		padding: 13px 20px 20px 23px;
		width: 62.8571428571%;
	}

	.common_testimonials .location {
		font-size: 13px;
	}

	.common_testimonials .name {
		color: #0e8bd9;
		line-height: 1.5;
		padding-bottom: 7px;
	}

	.common_testimonials .info_content {
		margin-top: 10px;
	}

	.common_testimonials .info {
		font-size: 13px;
	}
}

@media (max-width: 1140px) {
	html {
		font-size: 1.4035087719vw;
	}
}

@media (max-width: 375px) {
	html {
		font-size: 4.2666666667vw;
	}
}

@media screen and (max-width: 375px) {
	.top_company .main_text {
		font-size: 14px;
	}

	.top_company .main_text .u_mobile {
		display: none;
	}

	.top_company .sub_text {
		font-size: 12px;
	}

	.top_company .sub_text .u_mobile {
		display: none;
	}

	.footer .address {
		font-size: 12px;
	}

	.footer_copyright p {
		font-size: 10px;
	}

	.drawer_menu .nav_section {
		grid-template-columns: repeat(1, 1fr);
		margin: 50px auto 0;
		max-width: 250px;
	}

	.top_main_visual .highlight_text.highlight_text_main::after {
		left: auto;
		right: 20px;
	}

	.highlight_text.highlight_text_main strong {
		font-size: 100px;
	}

	.highlight_text.highlight_text_main small {
		font-size: 55px;
	}

	.highlight_text.highlight_text_main .small_50 {
		font-size: 30px;
	}

	.highlight_text.highlight_text_main .large {
		font-size: 2.1875rem;
		margin-top: 47px;
	}

	.key_features {
		margin-top: 0;
	}

	.button {
		font-size: 14px;
	}

	.top_owner .subtitle {
		font-size: 26px;
	}

	.button_light_blue.button {
		font-size: 14px;
	}

	.renovation_title {
		font-size: 18px;
	}

	.common_renovation_examples .swiper-button-prev {
		left: 28%;
	}

	.common_renovation_examples .swiper-button-next {
		right: 28%;
	}

	.common_testimonials .button_wrap {
		width: 280px;
	}

	.common_testimonials .location {
		font-size: 12px;
	}

	.common_testimonials .name {
		font-size: 18px;
		padding-bottom: 5px;
	}

	.common_testimonials .info {
		font-size: 12px;
	}

	.page_tenants .subpage_plans .plans_grid {
		grid-template-columns: repeat(1, 1fr);
	}
}

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