<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">@charset "UTF-8";
@import url("https://use.fontawesome.com/releases/v5.11.2/css/all.css");
/**
 * 1.0 - Normalize
 * 2.0 - Common
 * 3.0 - Header
 * 4.0 - Contents
 * 5.0 - Navi
 * 6.0 - Main
 * 7.0 - Footer
 * 8.0 - Single Page
 * 9.0 - Option
 */
/*----------------------------------------------------
	1.0 - Normalize
----------------------------------------------------*/
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table.table, caption, tbody, tfoot, thead, tr, th, td {
	border: 0;
	font-family: inherit;
	font-style: inherit;
	font-weight: inherit;
	margin: 0;
	outline: 0;
	padding: 0;
	vertical-align: baseline;
}
:focus {
	outline: 0;
}
ol, ul {
	list-style: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
caption, th, td {
	font-weight: normal;
	text-align: left;
}
blockquote:before, blockquote:after, q:before, q:after {
	content: "";
}
blockquote, q {
	quotes: """";
}
a img {
	border: 0;
}
figure {
	margin: 0;
}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary {
	display: block;
}
/*Border*/
*, *:before, *:after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
/*----------------------------------------------------
	2.0 - Common
----------------------------------------------------*/
html {
	background: #fff;
	font-size: 62.5%; /* base-font-size:10px */
}
body {
	color: #111;
	font-family: "Kosugi Maru", sans-serif;
	font-size: 1.6rem;
	letter-spacing: 0;
	display: none;
	background-image: url("../assets/img/common/bg_base.webp");
	background-position: center top;
	background-size: 2000px 3817px;
}
body.main {
	display: block;
}
@media (min-width: 2000px) {
	body {
		background-size: cover;
	}
}
@media (max-width: 820px) {
	body {
		font-size: 1.4rem;
	}
}
a {
	color: #c86713;
}
a:hover {
	color: #38a481;
	text-decoration-color: transparent;
}
*tel-setting*/ a[href*="tel:"] {
	pointer-events: none;
}
#wrapper {
	position: relative;
	width: 100%;
	margin: 0 auto;
	overflow: hidden;
}
/*----------------------------------------------------
	3.0 - Header
----------------------------------------------------*/
header {
	width: 100%;
	height: 120px;
	background: rgba(255, 255, 255, 0.75);
	display: flex;
	justify-content: center;
	align-items: flex-end;
	position: fixed;
	margin: 0 auto;
	padding: 0;
	text-align: center;
	line-height: 0;
	box-shadow: 0 0 8px rgba(0, 0, 0, 0.15);
	-webkit-backdrop-filter: blur(30px);
	backdrop-filter: blur(30px);
	transition: 0.3s;
	z-index: 2;
}
header h1 {
	width: 160px;
	height: 100px;
	display: flex;
	column-gap: 0.5em;
	position: absolute;
	bottom: 0%;
	left: 50%;
	transform: translate(-50%, -10px);
	z-index: 3;
}
header img {
	width: auto;
	height: 100%;
}
header a:hover img {
	opacity: 0.7;
	transition: 0.3s;
}
.header_inner {
	width: 96%;
	max-width: 1200px;
	height: 60px;
	padding: 0;
}
@media (max-width: 999px) {
	header {
		background: #fff;
		width: 100%;
		height: 120px;
		box-shadow: none;
		z-index: 2;
		column-gap: 0.5em;
	}
	header h1 {
		width: auto;
		height: 40px;
		display: flex;
		align-items: center;
	}
	header h1 img {
		height: 40px;
		transition: 0.3s;
	}
	.header_inner {
		width: 100%;
		height: calc(100vh - 60px);
		background: #fff;
		padding: 1em;
		position: fixed;
		top: 120px;
		left: 0;
		display: none;
		border-radius: 0;
	}
}
.head_content {
	width: 96%;
	max-width: 1200px;
	display: flex;
	justify-content: space-between;
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
}
.head_copy {
	height: 60px;
	display: inline-flex;
	align-items: center;
	font-size: 0.85em;
	line-height: 1.5;
	text-align: left;
}
.head_time {
	width: 240px;
	height: 60px;
	text-align: left;
	display: flex;
	font-weight: 700;
}
.head_group {
	line-height: 1.25;
	display: flex;
	justify-content: flex-start;
	align-items: center;
	column-gap: 0.5em;
	font-size: 2rem;
}
.head_group * {
	flex-shrink: 0;
}
.head_group img {
	width: auto;
	height: 40px;
}
.head_sns {
	line-height: 1.25;
	display: flex;
}
@media (max-width: 999px) {
	.head_content {
		width: 100%;
		padding-right: 60px;
		padding-left: 2%;
	}
	.head_copy {
		font-size: 0.75em;
	}
	.head_time {
		font-size: 1.4rem;
	}
	.head_group {
		padding-right: 64px;
	}
}
@media (max-width: 480px) {
	.head_content {
		background: #ff781d;
		padding-left: 0%;
		justify-content: center;
	}
	.head_copy {
		display: none;
	}
}
/*----------------------------------------------------
	4.0 - Contents
----------------------------------------------------*/
#contents {
	width: 100%;
	margin: 0 auto;
	padding: 0 0 0;
	line-height: 0;
	z-index: 0;
}
.inner {
	width: 92%;
	margin: 0 auto;
	text-align: left;
	position: relative;
	letter-spacing: -0.04em;
}
@media (min-width: 1080px) {
	.inner {
		width: 1080px;
	}
}
/*----------------------------------------------------
	5.0 - Navi
----------------------------------------------------*/
/* Hamburger */
@media (min-width: 1000px) {
	.hamburger {
		display: none;
	}
}
@media (max-width: 999px) {
	.hamburger {
		position: fixed;
		display: flex;
		justify-content: center;
		background: #000;
		right: 0;
		top: 0;
		width: 60px;
		height: 60px;
		line-height: 1.75;
		text-align: center;
		cursor: pointer;
		z-index: 1;
	}
	.hamburger.active {
		background: #fff;
	}
	.hamburger span {
		display: block;
		position: absolute;
		width: 30px;
		height: 2px;
		left: 15px;
		background: #eb911c;
		-webkit-transition: 0.3s ease-in-out;
		-moz-transition: 0.3s ease-in-out;
		transition: 0.3s ease-in-out;
	}
	.hamburger span:nth-child(1) {
		top: 13px;
	}
	.hamburger span:nth-child(2) {
		top: 21px;
	}
	.hamburger span:nth-child(3) {
		top: 29px;
	}
	.hamburger.active span:nth-child(1) {
		top: 21px;
		left: 15px;
		background: #eb911c;
		-webkit-transform: rotate(-45deg);
		-moz-transform: rotate(-45deg);
		transform: rotate(-45deg);
	}
	.hamburger.active span:nth-child(2), .hamburger.active span:nth-child(3) {
		top: 21px;
		background: #eb911c;
		-webkit-transform: rotate(45deg);
		-moz-transform: rotate(45deg);
		transform: rotate(45deg);
	}
	.hamburger p {
		position: absolute;
		top: 36px;
		color: #eb911c;
		font-size: 1.2rem;
		-webkit-transition: 0.3s ease-in-out;
		-moz-transition: 0.3s ease-in-out;
		transition: 0.3s ease-in-out;
		content: "MENU";
	}
	.hamburger.active p {
		color: #eb911c;
		content: "CLOSE";
	}
}
/* Menu */
@media (min-width: 1000px) {
	nav {
		width: 100%;
		z-index: 1;
		display: inline-block;
	}
	.dropmenu {
		display: flex;
		justify-content: center;
		width: auto;
		height: 60px;
		margin: 0;
	}
	.dropmenu li {
		width: calc((100% - 240px) / 6);
		height: 100%;
		position: relative;
		display: flex;
		justify-content: center;
		align-items: center;
		color: #000;
		font-size: 1.5rem;
		font-weight: 500;
		line-height: 1;
		transition: all 0.3s;
		flex-grow: 3;
	}
	.dropmenu li::before {
		content: "";
		width: 1px;
		height: calc(100% - 30px);
		background: #ed6c00;
		top: 15px;
		left: 0;
		position: absolute;
	}
	.dropmenu li:nth-of-type(3) {
		margin-right: 240px;
	}
	.dropmenu li:nth-of-type(3) a::after, .dropmenu li:nth-of-type(6) a::after {
		content: "";
		width: 1px;
		height: calc(100% - 30px);
		background: #ed6c00;
		top: 15px;
		right: 0;
		position: absolute;
	}
	.dropmenu li.contact {
		margin-left: 2em;
	}
	.dropmenu li a {
		width: 100%;
		height: 100%;
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		color: #000;
		text-decoration: none;
		padding: 0.25em 0.15em;
		transition: all 0.3s;
		position: relative;
	}
	.dropmenu li.contact a {
		background-color: #3666b0;
		color: #fff;
		padding: 0.85em 2.5em;
		border-radius: 1.75em;
	}
	.dropmenu li a:hover {
		color: #e98127;
	}
	.dropmenu li.contact a:hover {
		background-color: #458bdf;
		color: #fff;
	}
	.dropmenu li ul {
		position: absolute;
		top: 100%;
		left: 0;
		width: auto; /* nowrap */
		min-width: 100%; /* nowrap */
	}
	.dropmenu li ul li {
		background: #eee;
		height: 0;
		font-size: 1.3rem;
		overflow: hidden;
		transition-duration: 0.3s;
	}
	.dropmenu li ul li.nowrap, .dropmenu li ul li ul li.nowrap {
		white-space: nowrap;
	}
	.dropmenu li:hover &gt; ul &gt; li {
		height: 44px;
		overflow: visible;
	}
	.dropmenu li ul li ul {
		top: 0;
		left: 100%;
	}
	.dropmenu li:last-child ul li ul {
		left: -100%;
		width: 100%;
	}
	/* .dropmenu li .arrow:after {
        content: "";
        position: absolute;
        right: 4px;
        top: 24px;
        transition: all 0.3s;
        display: block;
        width: 8px;
        height: 8px;
        border: 5px solid transparent;
        border-left-color: #000;
        -webkit-transform: rotate(90deg);
    } */
	.dropmenu &gt; li.off {
		cursor: default;
		pointer-events: none;
	}
}
@media (max-width: 999px) {
	nav {
		background: none;
		height: auto;
	}
	.dropmenu {
		/*position: fixed;*/
		/*display: none;*/
		background-color: rgb(250, 235, 167);
		width: 100%;
		color: #333;
		z-index: -1;
		top: 60px;
		left: 0;
		border-radius: 1em;
		overflow: hidden;
	}
	.dropmenu &gt; li {
		position: relative;
		display: block;
		text-align: left;
		border-bottom: 1px solid #fff;
		transition: 0.3s all;
		font-size: 1.2em;
	}
	.dropmenu &gt; li &gt; ul li {
		border-top: 1px solid #fff;
	}
	.dropmenu &gt; li a {
		display: block;
		padding: 1.5em 1em 1.5em 1.25em;
		color: #29211d;
		text-decoration: none;
		transition: color 0.3s, text-decoration 0.3s;
	}
	.dropmenu &gt; li a:after {
		font-family: "Font Awesome 5 Free";
		content: "\f061";
		font-weight: 900;
		overflow: hidden;
		margin-left: 0.25em;
		float: right;
		width: 1em;
		height: 1em;
		line-height: 1;
		transform: translate(-50%, -50%);
		font-size: 0.85em;
	}
	.dropmenu &gt; li &gt; ul li a {
		padding: 1.5em 0 1.5em 0.4em;
	}
	.dropmenu &gt; li &gt; ul li ul li a {
		padding: 1.5em 0 1.5em 0.4em;
	}
	.dropmenu ul, .dropmenu ul ul {
		display: none;
	}
	.dropmenu &gt; li a:hover {
		color: #53a9f1;
	}
	.dropmenu li.on:after {
		display: none;
	}
	.dropmenu &gt; li.off {
		cursor: default;
		pointer-events: none;
	}
	.dropmenu &gt; li.off a:hover {
		color: #fff;
		cursor: default;
	}
}
/* arrow */
@media (max-width: 999px) {
	ul.dropmenu div.level01, ul.dropmenu div.level02 {
		position: relative;
	}
	ul.dropmenu div.level01 a, ul.dropmenu div.level02 a {
		display: flex;
		align-items: center;
	}
	ul.dropmenu div.level01 a:after, ul.dropmenu div.level02 a:after {
		content: "";
		position: absolute;
		right: 10px;
		/* top: 1.5em; */
		transition: all 0.2s ease-in-out;
		/* display: block; */
		width: 8px;
		height: 8px;
		border-top: solid 2px #999;
		border-right: solid 2px #999;
		-webkit-transform: rotate(135deg);
		transform: rotate(135deg);
	}
	ul.dropmenu div.level01 a:hover:after, ul.dropmenu div.level02 a:hover:after {
		border-top: solid 2px #f18353;
		border-right: solid 2px #f18353;
	}
	ul.dropmenu div.level01.open a:after, ul.dropmenu div.level02.openAcd a:after {
		-webkit-transform: rotate(-45deg);
		transform: rotate(-45deg);
		/* top: 1.75em; */
	}
}
/*----------------------------------------------------
	6.0 - Main
----------------------------------------------------*/
#contents h1 {
	position: relative;
	background-image: url(../img/common/bg_h1.jpg);
	background-position: center bottom;
	background-size: cover;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 150px;
	margin: 0 auto;
	color: #fff;
	font-family: "Poppins", "IBM Plex Sans JP", sans-serif;
	font-size: 2.875em;
	font-weight: 500;
	line-height: 1.1;
	text-align: center;
	text-shadow: 0 0 6px #000;
}
section {
	width: 100%;
	padding: 7.5em 0;
	line-height: 1.75;
	text-align: left;
	position: relative;
	z-index: 0;
}
@media (max-width: 480px) {
	section {
		padding: 5.5em 0;
	}
}
section h2 {
	position: relative;
	margin: 2em auto 0.75em;
	padding-bottom: 0.15em;
	font-size: 2.5em;
	font-weight: 500;
	line-height: 1.15;
	color: #000;
	text-align: left;
	display: inline-block;
	border-bottom: 2px solid #fff8a0;
	display: inline-flex;
	flex-direction: column;
	position: relative;
}
/*section h2::after {
	content: "";
	background: #fff8a0;
	width: 100%;
	height: 0.4em;
	position: absolute;
}*/
section h2 span {
	font-size: 0.4em;
	position: absolute;
	left: 50%;
	bottom: -1em;
	transform: translateX(-50%);
	white-space: nowrap;
}
section h2:first-child {
	margin-top: 0;
}
section h3 {
	position: relative;
	margin: 1.5em auto 0.5em;
	font-size: 1.25em;
	font-weight: 500;
	line-height: 1.15;
}
section h2 + h3 {
	margin-top: 0;
}
section h4 {
	color: #219688;
	position: relative;
	margin: 0.5em auto 0.25em;
	font-size: 1.25em;
	font-weight: 700;
	line-height: 1.15;
}
section h3 + h4 {
	margin-top: 0;
}
section h5 {
	position: relative;
	margin: 1.5em auto 0.5em;
	font-size: 1.25em;
	font-weight: 700;
	line-height: 1.15;
	color: #000;
}
section h4 + h5 {
	margin-top: 0;
}
/*----------------------------------------------------
	7.0 - Footer
----------------------------------------------------*/
footer {
	position: relative;
	background-color: #fff;
	width: 100%;
	margin: 0 auto;
	box-shadow: 0 0 8px rgba(0, 0, 0, 0.15);
}
@media (max-width: 480px) {
	footer {
		padding: 10vw 4%;
	}
}
footer .foot_top {
	display: flex;
	justify-content: space-between;
	width: 100%;
	max-width: 1080px;
	padding: 6% 4%;
	margin: 0 auto;
}
@media (min-width: 1080px) {
	footer .foot_top {
		padding: 60px 0;
	}
}
@media (max-width: 820px) {
	footer .foot_top {
		display: inline-block;
		flex-direction: column;
		text-align: center;
	}
}
.foot_address {
	line-height: 1.8;
}
@media (max-width: 820px) {
	.foot_address {
		text-align: center;
	}
}
.foot_logo {
	height: 50px;
	margin-bottom: 0.5em;
	font-size: 2em;
}
.foot_logo img {
	width: auto;
	height: 50px;
}
.foot_contact {
	display: flex;
	flex-direction: column;
}
@media (max-width: 820px) {
	.foot_contact {
		display: inline-block;
		margin: 5% auto 0;
		text-align: center;
	}
}
.foot_contact &gt; h3 {
	font-size: 1.25em;
	font-weight: 500;
}
.foot_contact &gt; h3:before {
	font-family: "Font Awesome 5 Free";
	content: "\f879";
	margin-right: 0.2em;
	font-size: 1em;
	font-weight: 900;
}
.foot_contact_tel {
	color: #3666a2;
	font-size: 3em;
	font-weight: 700;
	line-height: 1.4;
}
@media (max-width: 480px) {
	.foot_contact_tel {
		font-size: 2.5em;
	}
}
.foot_contact_time {
	background: #3666a2;
	color: #fff;
	text-align: center;
	padding: 0.4em;
}
@media (max-width: 820px) {
	.foot_contact_time {}
}
footer .foot_bottom {
	display: flex;
	justify-content: flex-end;
	padding: 0 0 1em;
	color: #8b8b8b;
}
@media (min-width: 1040px) {
	footer .foot_bottom {
		padding: 1em 5%;
	}
}
@media (max-width: 999px) {
	footer .foot_bottom {
		padding: 1em 20px;
	}
}
@media (max-width: 480px) {
	footer .foot_bottom {
		flex-direction: column;
		padding: 5% 20px;
	}
}
.foot_bottom .foot_link {
	order: 2;
	font-size: 0.875em;
	display: flex;
}
@media (max-width: 480px) {
	.foot_bottom .foot_link {
		order: 1;
		display: flex;
		justify-content: space-around;
	}
}
.foot_bottom .foot_link li {
	margin-left: 2em;
}
@media (max-width: 480px) {
	.foot_bottom .foot_link li {
		margin-left: 0;
	}
}
.foot_bottom .foot_link li:before {
	font-family: "Font Awesome 5 Free";
	content: "\f0da";
	font-weight: 900;
	color: #8b8b8b;
	font-size: 120%;
	margin-right: 0.25em;
	top: 0.05em;
	position: relative;
}
footer .footer_info {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	align-items: flex-end;
}
@media (max-width: 999px) {
	footer .footer_info {
		align-items: center;
		margin-top: 2em;
		row-gap: 2em;
	}
}
footer .footer_menu {
	display: flex;
	column-gap: 2em;
	font-size: 0.875em;
}
@media (max-width: 480px) {
	footer .footer_menu {
		display: none;
	}
}
footer .footer_menu li {
	display: flex;
}
footer .footer_menu li a {
	text-decoration: none;
}
footer .footer_facilitie {
	font-size: 0.875em;
	display: inline-flex;
	column-gap: 1em;
}
@media (max-width: 480px) {
	footer .footer_facilitie {
		flex-direction: column;
		row-gap: 1em;
	}
}
footer .footer_facilitie h3 {
	background: #333;
	color: #fff;
	border-radius: 0.5em;
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 0.25em 0.5em;
	font-size: 1.125em;
}
@media (max-width: 480px) {
	footer .footer_facilitie h3 {
		padding: 0.75em 0.5em;
	}
}
footer .footer_facilitie dl {
	display: flex;
	flex-direction: column;
	flex-wrap: wrap;
	column-gap: 2em;
	line-height: 1.8;
	align-items: flex-start;
}
@media (max-width: 480px) {
	footer .footer_facilitie dl {
		align-items: center;
	}
}
footer .footer_facilitie dt {
	font-size: 1.2em;
}
footer .copyright {
	font-size: 0.85em;
	text-align: right;
}
@media (max-width: 480px) {
	footer .copyright {
		margin-top: 5%;
		order: 2;
		text-align: center;
	}
}
footer a {
	color: #000;
}
footer a:hover {
	color: #577dd6;
}
footer a.tel {
	color: inherit;
	text-decoration: none;
}
/*----------------------------------------------------
	8.0 - Single Page
----------------------------------------------------*/
/*  Index
----------------------------------------------------*/
.top_mv {
	width: 100%;
	height: 100vh;
	max-height: 768px;
	margin: 0 auto;
	line-height: 0;
	text-align: center;
	overflow: hidden;
	z-index: 0;
	position: relative;
}
.top_mv img {
	width: 100%;
	max-width: 100%;
	min-width: 2000px;
	height: auto;
	transform: translate(-50%, -50%);
	left: 50%;
	top: 50%;
	position: relative;
	vertical-align: middle;
}
.mv_text {
	width: 100%;
	max-width: 1080px;
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	line-height: 1;
	margin: 0 auto;
	text-align: left;
	display: flex;
	flex-direction: column;
}
.mv_text &gt; p {
	background-color: rgba(255, 255, 255, 0.85);
	color: #111;
	display: inline-block;
	align-items: flex-start;
	align-content: flex-start;
	white-space: nowrap;
	overflow: hidden;
}
.mv_text &gt; p:nth-of-type(1) {
	font-size: 4.25em;
	font-style: italic;
	font-weight: 700;
	padding: 0.4em 0.4em 0.15em 0.35em;
}
.mv_text &gt; p:nth-of-type(2) {
	font-size: 3.75em;
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 900;
	padding: 0.1em 0.4em 0.4em 0.4em;
}
.mv_text &gt; p:nth-of-type(1) {
	animation: copy1 0.5s linear;
	width: 10em;
	opacity: 1;
}
@keyframes copy1 {
	from {
		width: 0%;
		opacity: 1;
	}
	to {
		width: 10em;
		opacity: 1;
	}
}
.mv_text &gt; p:nth-of-type(2) {
	animation: copy2 1.2s linear;
	width: 9.5em;
	opacity: 1;
}
@keyframes copy2 {
	0% {
		width: 0em;
		padding-left: 0;
		padding-right: 0;
	}
	50% {
		width: 0em;
		padding-left: 0;
		padding-right: 0;
	}
	50.1% {
		width: 0em;
		padding: 0.1em 0.4em 0.4em 0.4em;
	}
	100% {
		width: 9.5em;
	}
	to {
		width: 9.5em;
	}
}
.mv_text.loaded &gt; p:nth-of-type(1) {
	animation-delay: 5s;
}
.mv_text.loaded &gt; p:nth-of-type(2) {
	animation-delay: 5s;
}
@media (max-width: 999px) {
	.mv_text &gt; p:nth-of-type(1) {
		font-size: calc(100vw / 12.5);
	}
	.mv_text &gt; p:nth-of-type(2) {
		font-size: calc(100vw / 14);
	}
}
@media (max-width: 480px) {
	.mv_text &gt; p:nth-of-type(1) {
		font-size: calc(100vw / 11);
	}
	.mv_text &gt; p:nth-of-type(2) {
		font-size: calc(100vw / 12.5);
	}
}
/* Info */
.top_news {
	width: 100%;
	background-image: none;
	margin: 0 auto;
	padding: 0;
	text-align: center;
}
.top_news &gt; .inner {
	display: flex;
	padding: 1.5em 0;
	align-items: flex-start;
}
@media (max-width: 480px) {
	.top_news &gt; .inner {
		flex-wrap: wrap;
		justify-content: space-between;
	}
}
.top_news &gt; .inner h2 {
	order: 1;
	display: inline-block;
	font-weight: 400;
	font-size: 1.75em;
	margin: 0 16px 0 0;
	padding: 0;
	border: none;
	transform: translateY(0.075em);
}
.top_news &gt; .inner h2:after {
	content: none;
}
.top_news &gt; .inner dl {
	border-left: 1px solid #cacaca;
	order: 3;
	display: inline-block;
	margin: 0 0 0 16px;
}
@media (max-width: 480px) {
	.top_news &gt; .inner dl {
		margin: 0.5em 0 0;
		border-left: none;
	}
}
.top_news &gt; .inner .news_more {
	order: 2;
	display: inline-block;
	white-space: nowrap;
	font-size: 0.8125em;
	border: 1px solid #868686;
	border-radius: 5px;
	padding: 0.2em 1em 0;
	transform: translateY(0.2em);
}
.top_news &gt; .inner .news_more:after {
	font-family: "Font Awesome 5 Free";
	content: "\f061";
	font-weight: 900;
	overflow: hidden;
	margin-left: 0.25em;
}
.top_news dl {
	background: #fff;
	width: 100%;
	margin: 0 auto;
	line-height: 1.6;
	text-align: left;
	overflow-y: auto;
}
.top_news dt, .top_news dd {
	padding-top: 0.25em;
	padding-bottom: 0.2em;
}
.top_news dt {
	float: left;
	position: relative;
	padding-left: 1em;
	color: #999;
}
.top_news dd {
	position: relative;
	margin: 0;
	padding-left: 7.5em;
}
@media (max-width: 999px) {
	.top_news dt, .top_news dd {
		padding-top: 0;
		padding-bottom: 0;
	}
	.top_news dt {
		float: none;
	}
	.top_news dt:before {
		top: 2px;
	}
	.top_news dd {
		padding-left: 1em;
	}
}
@media (max-width: 480px) {
	.top_news dt {
		padding-left: 0;
	}
	.top_news dd {
		padding-left: 0;
	}
}
/* Section Head */
section[class*="top_"] {
	padding-top: 0;
	background-image: url("../img/common/bg_section.png");
	overflow: hidden;
}
section[class*="top_"] &gt; * {
	position: relative;
	z-index: 1;
}
section.top_business:after, section.top_message:after, section.top_company:after {
	content: "";
	background-repeat: no-repeat;
	width: 924px;
	height: 800px;
	position: absolute;
	bottom: 80px;
}
section.top_business:after {
	background-image: url("../img/contents/business/bg_business.svg");
	left: 0;
}
section.top_message:after {
	content: "";
	background-image: url("../img/contents/message/bg_message.svg");
	right: 0;
}
section.top_company:after {
	content: "";
	background-image: url("../img/contents/company/bg_company.svg");
	left: 0;
}
.section_head {
	background-color: #fff;
	position: relative;
	z-index: 0;
	height: 360px;
	display: flex;
	align-items: flex-end;
	justify-content: flex-start;
	background-size: 2000px auto;
	background-attachment: fixed;
	background-position: top center;
	margin-bottom: 7.5em;
}
@media (min-width: 1080px) {
	.section_head {
		padding: 0 5%;
	}
}
@media (max-width: 999px) {
	.section_head {
		height: calc(100vw / 3);
		background-size: auto 100vh;
	}
}
@media (max-width: 480px) {
	.section_head {
		margin-bottom: 5.5em;
	}
}
.top_business .section_head {
	background-image: url("../img/contents/business/bg_head_business.jpg");
}
.top_message .section_head {
	background-image: url("../img/contents/message/bg_head_message.jpg");
	justify-content: flex-end;
}
.top_company .section_head {
	background-image: url("../img/contents/company/bg_head_company.jpg");
}
.top_contact .section_head {
	background-image: url("../img/contents/contact/bg_head_contact.jpg");
	background-color: #3666b0;
	justify-content: flex-end;
	color: #fff;
	/*justify-content: flex-end;*/
}
.section_head:after {
	content: "";
	background: rgba(0, 0, 0, 0.5);
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	/*backdrop-filter: blur(12px);*/
}
.section_head &gt; p {
	color: #fff;
	font-size: 6.25em;
	font-style: italic;
	margin: 0;
	display: inline-block;
	padding-right: 0.1em;
	position: relative;
	z-index: 1;
	line-height: 0.8;
	mix-blend-mode: screen; /*スクリーン*/
}
@media (max-width: 820px) {
	.section_head &gt; p {
		font-size: calc(100vw / 10);
	}
}
section[class*="top_"] h2 &gt; span {
	color: #cfcfcf;
	font-size: 0.625em;
	position: relative;
	margin-left: 0.5em;
	top: -0.2em;
}
section[class*="top_"] h2:after {
	content: "";
	width: 1.35em;
	height: 2px;
	position: absolute;
	bottom: -2px;
	right: 0;
}
.top_business {}
.top_business h2 {
	color: #007cb5;
}
.top_business h2:after {
	background: #007cb5;
}
.top_message {}
.top_message h2 {
	color: #80b01f;
}
.top_message h2:after {
	background: #80b01f;
}
.top_company {}
.top_company h2 {
	color: #da6c00;
}
.top_company h2:after {
	background: #da6c00;
}
.top_contact {
	background-color: #3666b0;
	color: #fff;
}
.top_contact h2 {
	color: #fff;
}
.top_contact h2:after {
	background: #fff;
}
.top_contact h4 {
	color: #fff;
	border-bottom-color: #fff;
}
.top_contact a {
	color: #fff;
}
.contact_check {
	text-align: center;
	margin: 5% 0 0;
}
.form-check {
	margin-top: 2em;
}
.form-check label {
	display: flex;
	align-items: center;
	justify-content: center;
}
.form-check label:hover {
	cursor: pointer;
}
.form-check input {
	width: 1em;
	height: 1em;
	border: 2px solid #f50057;
	border-radius: 4px;
	display: inline-flex;
	vertical-align: text-top;
}
.form-check {
	display: block;
}
.form-check:hover {
	cursor: pointer;
}
.form-check input {
	display: none;
}
.form-check .dummy {
	background: #fff;
	width: 1em;
	height: 1em;
	border: 2px solid #fff;
	border-radius: 4px;
	display: inline-flex;
	vertical-align: text-top;
}
.form-check input:checked + .dummy:after {
	content: "";
	width: 80%;
	height: 40%;
	border-left: 2px solid #f50057;
	border-bottom: 2px solid #f50057;
	transform: rotate(-45deg);
}
.contact_check button {
	width: 92%;
	max-width: 320px;
	background: #d0d0d0;
	color: #666;
	border: none;
	margin: 1em 0 0;
	padding: 1em 0.25em;
	border-radius: 2em;
	cursor: default;
}
.contact_check button.set {
	background: #fff;
	color: #3666b0;
	cursor: pointer;
}
/* separate image-text */
.box_text_image {
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	position: relative;
	margin: -2% 0;
}
@media (max-width: 820px) {
	.box_text_image {
		flex-wrap: wrap;
	}
}
@media (max-width: 480px) {
	.box_text_image {
		flex-direction: column;
	}
}
.box_text_image &gt; .box_text {
	width: 50%;
	flex-basis: 50%;
	padding-left: calc(50% - 540px);
	padding-right: 2em;
}
@media (max-width: 1080px) {
	.box_text_image &gt; .box_text {
		padding-left: 4%;
	}
}
@media (max-width: 820px) {
	.box_text_image &gt; .box_text {
		width: 100%;
		flex-basis: 100%;
	}
}
@media (max-width: 480px) {
	.box_text_image &gt; .box_text {
		width: 92%;
		flex-basis: 92%;
		padding-left: 0;
		padding-right: 0;
	}
}
.box_text_image &gt; .box_image {
	width: 50%;
	flex-basis: 50%;
}
@media (max-width: 820px) {
	.box_text_image &gt; .box_image {
		width: 100%;
		flex-basis: 100%;
		margin-top: 4%;
		padding-left: 4%;
	}
}
@media (max-width: 480px) {
	.box_text_image &gt; .box_image {
		width: 92%;
		flex-basis: 92%;
		margin-top: 4%;
		padding-left: 0;
		padding-right: 0;
	}
}
.box_text_image &gt; .box_image img {
	vertical-align: middle;
	width: 100%;
	height: auto;
}
.box_text_image.rev {}
.box_text_image.rev &gt; .box_text {
	padding-left: 2em;
	padding-right: calc(50% - 540px);
	order: 2;
}
@media (max-width: 1080px) {
	.box_text_image.rev &gt; .box_text {
		padding-right: 4%;
	}
}
@media (max-width: 820px) {
	.box_text_image.rev &gt; .box_text {
		order: 1;
	}
}
@media (max-width: 480px) {
	.box_text_image.rev &gt; .box_text {
		padding-left: 0;
		padding-right: 0;
		order: 1;
	}
}
.box_text_image.rev &gt; .box_image {
	order: 1;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
}
@media (max-width: 820px) {
	.box_text_image.rev &gt; .box_image {
		padding-right: 4%;
		padding-left: 0;
		order: 2;
		-ms-writing-mode: lr;
		writing-mode: horizontal-tb;
	}
}
@media (max-width: 480px) {
	.box_text_image.rev &gt; .box_image {
		order: 2;
		-ms-writing-mode: lr;
		writing-mode: horizontal-tb;
	}
}
/*  BUSINESS
----------------------------------------------------*/
.biz_list {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
}
.biz_list dt, .biz_list dd {
	margin-top: 0.5em;
}
.biz_list dt:first-of-type, .biz_list dd:first-of-type {
	margin-top: 0;
}
.biz_list dt {
	width: 6em;
	flex-basis: 6em;
}
.biz_list dd {
	width: calc(100% - 6em);
	flex-basis: calc(100% - 6em);
}
@media (max-width: 820px) {
	.biz_list dd br {
		display: none;
	}
}
@media (max-width: 480px) {
	.biz_list dd {
		width: 100%;
		flex-basis: 100%;
		margin-top: 0;
	}
}
/*  MESSAGE
----------------------------------------------------*/
/*  COMPANY
----------------------------------------------------*/
/*  Program
----------------------------------------------------*/
.program_list {
	width: 100%;
	margin: 0;
	padding: 0;
	overflow: hidden;
}
.program_list .prg_title {
	margin-top: 1em;
	padding-left: 4em;
	color: #000;
	font-weight: 700;
	text-indent: -4em;
}
.program_list .prg_title &gt; .title_number {
	display: inline-block;
	background: #000;
	width: 3.5em;
	margin-right: 0.5em;
	padding: 0 0.15em;
	color: #fff;
	line-height: 1.15;
	text-indent: 0;
	text-align: center;
}
.program_list dt {
	float: left;
	width: 3em;
}
.program_list dt:after {
	content: "：";
}
.program_list dd {
	display: block;
	padding-left: 9em;
	text-indent: -6em;
}
.program_list dd .prg_name {
	text-indent: 0;
	display: inline-table;
	width: 5em;
}
.prg_time {
	text-align: right;
}
.prg_time {
	text-align: right;
	color: #555;
}
.prg_sponsor {
	margin-top: 10px;
	text-align: right;
}
/* Flyer Style */
section .prg_flyer {
	float: right;
	margin-left: 1em;
	overflow: hidden;
}
section .prg_flyer img {
	width: 100px;
	float: right;
}
section .prg_flyer a:hover img {
	filter: alpha(opacity=60);
	-ms-filter: "alpha( opacity=60 )";
	opacity: 0.6;
	transition: 0.2s;
}
section .prg_flyer a:not(:first-of-type) {
	display: none;
}
/* Irregular Option */
section h3 + .prg_time {
	margin-top: -20px;
}
section h4.prg {
	font-size: 1.25em;
	padding-right: 4em;
}
section h4.prg .prg_icon {
	position: absolute;
	bottom: 3px;
	right: 0;
	padding: 0.15em;
	color: #fff;
	font-size: 0.7em;
	font-weight: normal;
	border-radius: 2px;
}
/*  Registration
----------------------------------------------------*/
/*----------------------------------------------------
	9.0 - Option
----------------------------------------------------*/
/*  List - Text
----------------------------------------------------*/
/* No icon Style */
ul.list_normal_jp li {
	padding-left: 1em;
}
ul.list_normal_jp li {
	padding-left: 1em;
	text-indent: -1em;
}
/* No icon Style/English */
ul.list_normal_en li {
	padding-left: 0.425em;
}
ul.list_normal_en li {
	padding-left: 0.425em;
	text-indent: -0.425em;
}
/* Disk Style */
ul.list_disc {
	margin-left: 1em;
}
ul.list_disc li {
	position: relative;
}
ul.list_disc li:after {
	display: block;
	background-color: #666;
	content: "";
	position: absolute;
	top: 0.65em;
	left: -0.75em;
	width: 6px;
	height: 6px;
	border-radius: 100%;
}
/* Mark Style */
ul.list_mark li {
	padding-left: 1em;
	position: relative;
}
ul.list_mark li:before, ul.list_mark li:after {
	content: " ";
	position: absolute;
}
ul.list_mark li:before {
	background-color: #000;
	width: 1em;
	height: 1em;
	top: 0.35em;
	left: 0em;
	border-radius: 50%;
}
ul.list_mark li:after {
	top: 0.9rem;
	left: 0.6rem;
	border: 0.4rem solid transparent;
	border-left: 0.5rem solid #fff;
}
/* Link Style */
ul.list_link li {
	padding: 0 0 0.5em 1em;
	position: relative;
	border-bottom: 1px solid #ddd;
}
ul.list_link li:before {
	display: block;
	position: absolute;
	content: "\025b6";
	width: 1em;
	height: 1em;
	margin-left: -1em;
	color: #000;
}
/* Decimal Style */
ol.list_decimal {
	list-style: none;
	counter-reset: num;
	margin-left: 2em;
}
ol.list_decimal &gt; li {
	position: relative;
}
ol.list_decimal &gt; li:before {
	counter-increment: num;
	content: counter(num) ".";
	display: inline-block;
	position: absolute;
	width: 2em;
	top: 0;
	left: -2em;
	margin-right: 2em;
	text-align: center;
}
/* Decimal (Parentheses) Style */
ol.list_numberParen {
	list-style-type: none;
	counter-reset: ol_li;
	margin-left: 2em;
}
ol.list_numberParen &gt; li {
	position: relative;
}
ol.list_numberParen &gt; li:before {
	counter-increment: ol_li;
	content: "("counter(ol_li) ")";
	display: inline-block;
	position: absolute;
	width: 2em;
	top: 0;
	left: -2em;
	margin-right: 2em;
	text-align: center;
}
/* Decimal (Parentheses - One Side) Style */
ol.list_numberParenR {
	list-style-type: none;
	counter-reset: ul_lione;
	margin-left: 2em;
}
ol.list_numberParenR &gt; li {
	position: relative;
}
ol.list_numberParenR &gt; li:before {
	counter-increment: ul_lione;
	content: counter(ul_lione) ")";
	display: inline-block;
	position: absolute;
	width: 2em;
	top: 0;
	left: -2em;
	margin-right: 2em;
	text-align: center;
}
/*  List - Button
----------------------------------------------------*/
ul.list_button {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	line-height: 1.1;
	text-align: center;
}
ul.list_button li {
	margin: 0 auto 0.75em;
}
ul.list_button &gt; li a {
	display: flex;
	justify-content: center;
	align-items: center;
	background-color: #e2edf4;
	min-width: 40%;
	height: 56px;
	color: #000;
	text-decoration: none;
	border: 2px solid #000;
	border-radius: 4px;
	box-shadow: 0 2px 5px #ccc;
	transition: 0.3s;
}
ul.list_button &gt; li a:hover {
	background-color: #fff;
	border-radius: 4px;
	color: #000;
}
ul.list_button &gt; li.notLink {
	display: flex;
	justify-content: center;
	align-items: center;
	background-color: #bcbcbc;
	height: 56px;
	color: #fff;
	text-decoration: none;
	border: 2px solid #fff;
	border-radius: 4px;
	box-shadow: 0 2px 5px #ccc;
	transition: 0.3s;
}
ul.list_button.btn_col01 &gt; li {
	width: 48%;
}
ul.list_button.btn_col02 &gt; li {
	width: 48%;
}
ul.list_button.btn_col02_center &gt; li {
	width: 40%;
}
ul.list_button.btn_col03 &gt; li {
	width: 30%;
}
@media (max-width: 820px) {
	ul.list_button.btn_col02_center &gt; li, ul.list_button.btn_col03 &gt; li {
		width: 48%;
	}
}
/* 2 Column After */
ul.list_button.btn_col02:after {
	content: "";
	display: block;
	width: 50%;
	height: 0;
}
/* 3 Column After */
ul.list_button.btn_col03:after {
	content: "";
	display: block;
	width: 66.67%;
	height: 0;
}
@media (max-width: 820px) {
	ul.list_button.btn_col03:after {
		width: 50%;
	}
}
/*  List - Banner
----------------------------------------------------*/
ul.list_banner {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	line-height: 1.1;
	text-align: center;
}
ul.list_banner li {
	margin: 0 0 0.75em;
}
ul.list_banner li a img {
	width: 100%;
	border: 1px solid #ddd;
	transition: 0.3s;
}
ul.list_banner &gt; li a img:hover {
	border: 1px solid #999;
}
ul.list_banner li.blank {
	margin: 0;
}
ul.list_banner.banner_col01 &gt; li {
	width: 100%;
}
ul.list_banner.banner_col02 &gt; li {
	width: 48%;
}
ul.list_banner.banner_col03 &gt; li {
	width: 32%;
}
ul.list_banner.banner_col04 &gt; li {
	width: 24%;
}
@media (max-width: 480px) {
	ul.list_banner.banner_col04 &gt; li {
		width: 30%;
	}
}
/*  Table
----------------------------------------------------*/
table.table_normal {
	width: 100%;
	border: solid 1px #ddd;
}
table.table_normal th {
	padding: 10px;
	background: #f8f1dc;
	border-left: solid 1px #ddd;
	border-bottom: solid 1px #ddd;
	font-weight: 700;
}
table.table_normal td {
	padding: 10px;
	background: #fff;
	border-left: solid 1px #ddd;
	border-bottom: solid 1px #ddd;
}
/* Vertical Setting */
table th.vtl_center, table td.vtl_center {
	vertical-align: middle;
}
/* Scroll */
@media (max-width: 820px) {
	.table_scroll {
		overflow-x: scroll;
	}
	.table_scroll::-webkit-scrollbar {
		height: 10px;
	}
	.table_scroll::-webkit-scrollbar-track {
		margin: 0 2px;
		background: #ccc;
		border-radius: 5px;
	}
	.table_scroll::-webkit-scrollbar-thumb {
		border-radius: 5px;
		background: #666;
	}
	.table_scroll:after {
		content: "*If the window size is narrow, this table is displayed with side scrolling.";
		position: relative;
		font-size: calc(820px * 0.015625);
	}
	.table_scroll .table_normal {
		min-width: 700px;
	}
}
/* Stack */
table.table_stack_sp {
	width: 100%;
	border-top: solid 1px #ccc;
}
table.table_stack_sp th {
	background-color: #e6e6e6;
	color: #111;
	padding: 1em 2em;
	font-weight: 500;
	text-align: left;
	white-space: nowrap;
	vertical-align: middle;
	border-bottom: solid 1px #ccc;
	width: 25%;
}
table.table_stack_sp td {
	background-color: #fff;
	color: #333;
	padding: 1em 2em;
	vertical-align: middle;
	border-bottom: solid 1px #ccc;
}
@media (max-width: 480px) {
	table.table_stack_sp th {
		width: auto;
		text-align: left;
	}
	table.table_stack_sp th, table.table_stack_sp td {
		border-bottom: none;
		border: 1px solid #ccc;
	}
	table.table_stack_sp th, table.table_stack_sp td {
		display: list-item;
		list-style: none;
		width: 100%;
		padding: 8px 1em;
		border-width: 1px 0 0;
	}
}
/*  Form
----------------------------------------------------*/
input, textarea, button {
	font-family: "Poppins", "IBM Plex Sans JP", sans-serif;
	font-size: 1em;
}
input, textarea {
	width: 100%;
	border: 1px solid #cacaca;
	padding: 0.5em 1em;
}
.form-button {
	width: 1em;
}
.form_must, .form_any {
	border-radius: 4px;
	font-size: 81.25%;
	padding: 0.25em 0.5em 0.15em;
	margin-right: 0.5em;
}
.form_must {
	background: #de0c2e;
	color: #fff;
}
.form_any {
	background: #fff;
	border: 1px solid #c9c9c9;
}
.contact_send {
	display: flex;
	justify-content: space-around;
	margin-top: 3%;
}
.contact_send input {
	width: 92%;
	max-width: 320px;
	background: #fff;
	color: #3666b0;
	border: none;
	margin: 1em 0 0;
	padding: 1em 0.25em;
	border-radius: 2em;
	cursor: pointer;
}
/*  Back Ground Color
----------------------------------------------------*/
.bg_blue {
	background: #000;
}
.bg_green {
	background: #509869;
}
.bg_red {
	background: #e0363c;
}
.bg_orange {
	background: #ec7430;
}
/*  Align
----------------------------------------------------*/
.center {
	text-align: center;
}
.left {
	text-align: left;
}
.right {
	text-align: right;
}
/*  Hr
-----------------------------------------------*/
hr {
	border: solid 1px #ddd;
}
/*  Text
----------------------------------------------------*/
sub, sup {
	font-size: 0.75em;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}
sup {
	top: -0.5em;
}
sub {
	bottom: -0.25em;
}
strong {
	font-weight: 700;
}
.tx_cancel {
	text-decoration: line-through;
}
.tx_cancel_red {
	text-decoration: line-through;
	color: #e0363c;
}
.tx_cancel_red span {
	color: black;
}
.tx_red {
	color: #e0363c;
}
.tx_blue {
	color: #000;
}
.tx_black {
	color: #000;
}
.tx_white {
	color: #fff;
}
.tx_13 {
	font-size: 1.3rem;
}
.tx_13B {
	font-size: 1.3rem;
	font-weight: 700;
}
.tx_14 {
	font-size: 1.4rem;
}
.tx_14B {
	font-size: 1.4rem;
	font-weight: 700;
}
.tx_15 {
	font-size: 1.5rem;
}
.tx_15B {
	font-size: 1.5rem;
	font-weight: 700;
}
.tx_16 {
	font-size: 1.6rem;
}
.tx_16B {
	font-size: 1.6rem;
	font-weight: 700;
}
.tx_17 {
	font-size: 1.7rem;
}
.tx_17B {
	font-size: 1.7rem;
	font-weight: 700;
}
.tx_18 {
	font-size: 1.8rem;
}
.tx_18B {
	font-size: 1.8rem;
	font-weight: 700;
}
.tx_20 {
	font-size: 2rem;
}
.tx_20B {
	font-size: 2rem;
	font-weight: 700;
}
.tx_22 {
	font-size: 2.2rem;
}
.tx_22B {
	font-size: 2.2rem;
	font-weight: 700;
}
@media (max-width: 820px) {
	.tx_13, .tx_13B {
		font-size: 1.2rem;
	}
	.tx_14, .tx_14B {
		font-size: 1.3rem;
	}
	.tx_15, .tx_15B {
		font-size: 1.4rem;
	}
	.tx_16, .tx_16B {
		font-size: 1.5rem;
	}
	.tx_17, .tx_17B {
		font-size: 1.6rem;
	}
	.tx_18, .tx_18B {
		font-size: 1.7rem;
	}
	.tx_20, .tx_20B {
		font-size: 1.8rem;
	}
	.tx_22, .tx_22B {
		font-size: 2rem;
	}
}
.tx_space01 {
	letter-spacing: 0.1rem;
}
.tx_space02 {
	letter-spacing: 0.2rem;
}
.tx_space03 {
	letter-spacing: 0.3rem;
}
.tx_space04 {
	letter-spacing: 0.4rem;
}
.tx_space05 {
	letter-spacing: 0.5rem;
}
.tx_space_n001 {
	letter-spacing: -0.01rem;
}
.tx_space_n005 {
	letter-spacing: -0.05rem;
}
.tx_space_n01 {
	letter-spacing: -0.1rem;
}
.tx_space_n02 {
	letter-spacing: -0.2rem;
}
.tx_space_n03 {
	letter-spacing: -0.3rem;
}
.tx_indent01 {
	padding-left: 1em;
	text-indent: -1em;
}
.tx_indent02 {
	padding-left: 2em;
	text-indent: -2em;
}
/*  Line Height
----------------------------------------------------*/
.line_height00 {
	line-height: 0;
	vertical-align: middle;
}
.line_height01 {
	line-height: 1;
	vertical-align: middle;
}
.line_height02 {
	line-height: 2;
	vertical-align: middle;
}
/*  Text Break
----------------------------------------------------*/
@media (max-width: 999px) {
	span.br999_under:before {
		content: "\A";
		white-space: pre;
	}
}
@media (max-width: 820px) {
	span.br768_under:before {
		content: "\A";
		white-space: pre;
	}
}
@media (max-width: 480px) {
	span.br480_under:before {
		content: "\A";
		white-space: pre;
	}
}
/*  Margin
----------------------------------------------------*/
.mgt_10 {
	margin-top: 10px;
}
.mgt_20 {
	margin-top: 20px;
}
.mgt_30 {
	margin-top: 30px;
}
.mgt_40 {
	margin-top: 40px;
}
.mgt_50 {
	margin-top: 50px;
}
.mgb_10 {
	margin-bottom: 10px;
}
.mgb_20 {
	margin-bottom: 20px;
}
.mgb_30 {
	margin-bottom: 30px;
}
.mgb_40 {
	margin-bottom: 40px;
}
.mgb_50 {
	margin-bottom: 50px;
}
.mgl_10 {
	margin-left: 10px;
}
.mgl_01 {
	margin-left: 1em;
}
.mgl_02 {
	margin-left: 2em;
}
.mgl_03 {
	margin-left: 3em;
}
.mgl_04 {
	margin-left: 4em;
}
.mgl_05 {
	margin-left: 5em;
}
/*  Icon
----------------------------------------------------*/
/*Link Blank Icon*/
.link:after {
	font-family: "Font Awesome 5 Free";
	content: "\f360";
	margin-left: 0.2em;
	color: #4369c4;
	font-size: 1.375em;
	font-weight: 900;
}
.pdf:after {
	font-family: "Font Awesome 5 Free";
	content: "\f1c1";
	margin-left: 0.2em;
	color: #f54328;
	font-size: 1.6em;
	font-weight: 900;
}
.ppt:after {
	font-family: "Font Awesome 5 Free";
	content: "\f1c4";
	margin-left: 0.2em;
	color: #ce6243;
	font-size: 1.6em;
	font-weight: 900;
}
.word:after {
	font-family: "Font Awesome 5 Free";
	content: "\f1c2";
	margin-left: 0.2em;
	color: #254c9b;
	font-size: 1.6em;
	font-weight: 900;
}
.excel:after {
	font-family: "Font Awesome 5 Free";
	content: "\f1c3";
	margin-left: 0.2em;
	color: #347241;
	font-size: 1.6em;
	font-weight: 900;
}
.ssl:after {
	font-family: "Font Awesome 5 Free";
	content: "\f084";
	margin-left: 0.2em;
	color: #ceaf28;
	font-size: 1.6em;
	font-weight: 900;
}
/* Triangle Icon */
.triangle {
	/* margin: 0; */
	padding-left: 1em;
	text-indent: -1em;
	position: relative;
}
.triangle:before {
	content: "\025b6";
	color: #000;
}
/*  Page Top
----------------------------------------*/
#page_top {
	position: fixed;
	display: flex;
	bottom: 40px;
	right: 40px;
	margin: 0;
	width: 2em;
	height: 2em;
	border-radius: 50%;
}
@media (max-width: 999px) {
	#page_top {
		bottom: 1em;
		right: 1em;
	}
}
#page_top a {
	width: 2em;
	height: 2em;
	display: flex;
	justify-content: center;
	align-items: center;
	line-height: 0;
	opacity: 0.75;
	position: relative;
	text-align: center;
	vertical-align: middle;
	transition: 0.4s;
	border-radius: 50%;
	background-color: rgba(0, 0, 0, 0.85);
	color: #fff;
	text-decoration: none;
}
#page_top a:hover {
	background-color: #666;
}
@media (max-width: 999px) {
	#page_top a {
		width: 2em;
		height: 2em;
		text-align: center;
		vertical-align: middle;
		transition: 0.4s;
		box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.3);
		-webkit-transform: rotate(0);
		transform: rotate(0);
	}
}
#page_top a:before {
	font-family: "Font Awesome 5 Free";
	content: "\f062";
	font-weight: 900;
	overflow: hidden;
	width: 1em;
	height: 1em;
	line-height: 1;
}
@media (max-width: 999px) {
	#page_top a:before {
		top: calc(50% - 6px);
		left: calc(50% - 6px);
	}
}
/*  Background
----------------------------------------*/
.bg_beige {
	background: #f3efec;
}
/*  Float
----------------------------------------------------*/
.fL {
	float: left;
	margin: 0 1em 10px 0;
}
.fR {
	float: right;
	margin: 0 0 10px 1em;
}
/*  Attention
----------------------------------------------------*/
.box_attention {
	max-width: 100%;
	padding: 1em;
	line-height: 1.6;
	border: 5px solid #e0363c;
}
/*  Construction
----------------------------------------------------*/
.construction {
	width: 60%;
	margin: 5% auto 30%;
	padding: 20px 40px;
	display: block;
	color: #bbb;
	text-align: center;
	border: 3px solid #ddd;
}
.construction .title {
	font-size: 1.2em;
	font-weight: 700;
}
@media (max-width: 480px) {
	.construction {
		padding: 10px 20px;
	}
}
/*  Animation
----------------------------------------------------*/
/* アニメーションスタートの遅延時間を決めるCSS*/
.delay-time02 {
	animation-delay: 0.2s;
}
.delay-time04 {
	animation-delay: 0.4s;
}
/*==================================================
スタート時は要素自体を透過0にするためのopacity:0;を指定する
===================================*/
.box {
	opacity: 0;
}
/*==================================================
動き自体の指定：今回は「ふわっ」
===================================*/
.fadeUp {
	animation-name: fadeUpAnime;
	animation-duration: 0.75s;
	animation-fill-mode: forwards;
	opacity: 0;
}
@keyframes fadeUpAnime {
	from {
		opacity: 0;
		transform: translateY(100px);
		filter: blur(10px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
		filter: blur(0px);
	}
}
.fadeUpFirst {
	animation-name: fadeUpAnime;
	animation-duration: 0.75s;
	animation-fill-mode: forwards;
	opacity: 0;
}
@keyframes fadeUpAnime {
	from {
		opacity: 0;
		transform: translateY(100px);
		filter: blur(10px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
		filter: blur(0px);
	}
}
.slideLeft {
	animation-name: slideLeftAnime;
	animation-duration: 0.5s;
	animation-fill-mode: forwards;
	opacity: 0;
}
@keyframes slideLeftAnime {
	from {
		opacity: 0;
		transform: translateX(-50vw);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}
.slideRight {
	animation-name: slideRightAnime;
	animation-duration: 0.5s;
	animation-fill-mode: forwards;
	opacity: 0;
}
@keyframes slideRightAnime {
	from {
		opacity: 0;
		transform: translateX(50vw);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}
/* Loading
----------------------------------------------------*/
/* ロード画面の初期状態 */
.load {
	display: flex;
	position: fixed;
	width: 100vw;
	height: 100vh;
	overflow: hidden;
	background-color: #fff;
	z-index: 100;
	align-items: center;
	justify-content: center;
	text-align: center;
	opacity: 1;
	transition: opacity 1s ease-in-out; /* フェードアウト時間を1.5秒に設定 */
}
/* 完全に非表示の状態 */
.load.hidden {
	pointer-events: none; /* クリック無効化 */
	visibility: hidden; /* 完全に非表示 */
}
/* Loading list */
.list_loading {
	width: 100%;
	height: 100%;
	position: relative;
	z-index: 0;
	opacity: 0; /* 初期状態は透明 */
	transition: opacity 1s ease-in-out;
}
.list_loading.show {
	opacity: 1; /* フェードイン */
}
.list_loading li {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 0;
	background-color: #fff;
	background-image: url("../assets/img/common/bg_base.webp");
	background-position: center top;
	background-size: cover;
	opacity: 0; /* 初期状態は透明 */
	transition: opacity 1s ease-in-out; /* フェードイン/アウトのトランジション */
}
.list_loading li.show {
	opacity: 1; /* 表示時に透明度を変更 */
}
.list_loading li img {
	width: 96%;
	max-width: 768px;
	height: auto;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}
@media (max-width: 768px) {
	.list_loading li img {
		width: 100%;
		max-width: 100%;
	}
}
/* loading text */
.list_loading p {
	letter-spacing: -0.04em;
}
.list_loading p span {
	opacity: 0;
	transform: translateY(20px);
	display: inline-block;
	transition: opacity 0.4s, transform 0.4s;
}
.list_loading .slide_copy01_01 {
	width: 100%;
	max-width: 768px;
	display: flex;
	flex-direction: column;
	color: #3dafa2;
	font-size: 3em;
	font-weight: 700;
	line-height: 1.6;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -6.5em);
	z-index: 1;
}
.list_loading .slide_copy01_02 {
	color: #7b4d00;
	font-size: 1.5em;
	font-weight: 700;
	line-height: 1.6;
	text-align: left;
	position: absolute;
	top: 50%;
	left: calc(50% - 1.5em);
	transform: translate(0, -3em);
	z-index: 1;
}
.list_loading .slide_copy01_03 {
	color: #7b4d00;
	font-size: 1.5em;
	font-weight: 700;
	line-height: 1.6;
	text-align: left;
	position: absolute;
	top: 50%;
	left: calc(50% - 16em);
	transform: translate(0, 5.5em);
	z-index: 1;
}
.list_loading .slide_copy02_01 {
	color: #7b4d00;
	width: 100%;
	font-size: 3.125em;
	font-weight: 700;
	line-height: 1.6;
	text-align: center;
	position: absolute;
	top: 50%;
	left: 0%;
	transform: translate(0, -5em);
	z-index: 1;
}
.list_loading .slide_copy03_01 {
	color: #7b4d00;
	width: 100%;
	max-width: 768px;
	padding: 0;
	font-size: 1.75em;
	font-weight: 700;
	line-height: 2;
	text-align: left;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, 4.5em);
	z-index: 1;
}
@media (max-width: 768px) {
	.list_loading .slide_copy01_01 {
		width: auto;
		max-width: 100%;
		font-size: 5.75vw;
		top: 50%;
		left: 0%;
		transform: translate(10vw, -39vw);
	}
	.list_loading .slide_copy01_02 {
		font-size: 2.8vw;
		top: 50%;
		left: 40%;
		transform: translate(6vw, -9vw);
	}
	.list_loading .slide_copy01_03 {
		font-size: 2.8vw;
		top: 50%;
		left: 0%;
		transform: translate(5vw, 16vw);
	}
	.list_loading .slide_copy02_01 {
		width: 100%;
		font-size: 6vw;
		top: 50%;
		left: 0%;
		transform: translate(0, -30vw);
	}
	.list_loading .slide_copy03_01 {
		width: 100%;
		padding: 0 0 0 4%;
		font-size: 3.6vw;
		top: 50%;
		left: 0%;
		transform: translate(0, 20vw);
	}
}
/* Sample
----------------------------------------------------*/
@media print {
	.load {
		display: none;
		overflow: hidden;
		width: 0;
		height: 0;
	}
}
/* Sample
----------------------------------------------------*/
.test {
	line-height: 1;
}
/*----------------------------------------------------
	8.0 - Page Section
----------------------------------------------------*/
/*  MV
----------------------------------------------------*/
.mv {
	width: 92%;
	max-width: 1200px;
	margin: 0 auto;
	padding-top: 0;
	padding-bottom: 0;
	position: relative;
	display: flex;
	mix-blend-mode: darken;
}
@media (max-width: 2000px) {
	.mv {}
}
@media (max-width: 1600px) {
	.mv {
		padding-top: 4em;
	}
}
@media (max-width: 999px) {
	.mv {
		padding-top: 0em;
	}
}
@media (max-width: 480px) {
	.mv {
		padding-top: 120px;
	}
}
.mv_inner {
	padding-top: 80px;
	display: flex;
	align-items: center;
}
@media (max-width: 999px) {
	.mv_inner {
		padding-top: 120px;
	}
}
@media (max-width: 480px) {
	.mv_inner {
		flex-direction: column;
		padding-top: 0;
	}
}
.mv_box_text {
	width: 52%;
	order: 2;
	display: flex;
	justify-content: center;
	flex-direction: column;
	column-gap: 1em;
	row-gap: 1em;
	text-align: center;
	transform: translateY(-0%);
}
.mv_box_text h3 {
	color: #f49e23;
	font-weight: 700;
	font-size: 2.25em;
	line-height: 1.4;
	margin: 0;
	padding: 0;
}
.mv_box_image {
	width: 48%;
	order: 1;
}
.mv_box_image img {
	width: 120%;
	height: auto;
	vertical-align: middle;
	transform: translateX(-5%);
	z-index: -1;
	position: relative;
}
.mv_time_info {
	width: 15%;
	position: absolute;
	top: 0%;
	left: 85%;
	transform: translateY(75%);
}
.mv_time_info02 {
	width: 15%;
	position: absolute;
	top: 0%;
	left: 68%;
	transform: translateY(75%);
}
.mv_time_info img {
	width: 100%;
	height: auto;
	vertical-align: middle;
	z-index: -1;
	position: relative;
}
@media (max-width: 999px) {
	.mv_box_text {
		width: 56%;
	}
	.mv_box_image {
		width: 44%;
	}
	.mv_box_text h3 {
		font-size: 3.5vw;
	}
	.mv_box_image img {
		width: 150%;
		transform: translateX(-20%);
	}
	.mv_time_info {
		width: 15%;
		position: absolute;
		top: 50%;
		left: 85%;
		transform: translateY(calc(-100% * 1.25));
	}
	.mv_time_info02 {
		width: 15%;
		position: absolute;
		top: 50%;
		left: 68%;
		transform: translateY(calc(-100% * 1.25));
	}
}
@media (max-width: 480px) {
	.mv_box_image {
		width: 88%;
	}
	.mv_box_text {
		width: 92%;
	}
	.mv_box_text h3 {
		font-size: 5vw;
	}
	.mv_time_info {
		width: 25%;
		position: absolute;
		top: 0%;
		left: 75%;
		transform: translateY(40%);
	}
	.mv_time_info02 {
		width: 25%;
		position: absolute;
		top: 0%;
		left: 75%;
		transform: translateY(150%);
	}
}
/*  Comment
----------------------------------------------------*/
.comment {
	width: 92%;
	max-width: 1200px;
	margin: 0 auto;
	padding-top: 0;
	padding-bottom: 0;
	position: relative;
	display: flex;
	justify-content: center;
}
.comment p {
	color: #34a79a;
}
.br_comment {
	display: none;
}
@media (max-width: 768px) {
	.br_comment {
		display: block;
	}
}
@media (max-width: 480px) {
	.comment {
		padding: 2em 0;
	}
	.comment p {
		font-size: 4.4vw;
	}
}
/*  Philosophy
----------------------------------------------------*/
.philosophy {
	width: 92%;
	max-width: 1200px;
	margin: 0 auto;
	padding-top: 200px;
	padding-bottom: 0;
	position: relative;
	mix-blend-mode: darken;
}
@media (max-width: 999px) {
	.philosophy {
		padding-top: 200px;
	}
}
@media (max-width: 480px) {
	.philosophy {
		padding-top: 72vw;
	}
}
.philosophy::after {
	content: "";
	width: 48vw;
	height: calc(48vw * 1);
	background-image: url("../assets/img/mv/bg_main01.png");
	background-position: center top;
	background-size: 100%;
	background-repeat: no-repeat;
	z-index: -1;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-88%, -50%);
}
/*.philosophy::after {
  content: "";
  width: 100vw;
  height: 980px;
  background-image: url(../assets/img/philosophy/bg_philosophy.webp);
  background-position: center top;
  background-size: 2000px 980px;
  background-repeat: no-repeat;
  z-index: -1;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}*/
@media (max-width: 2000px) {
	.philosophy::after {
		width: 680px;
		height: calc(680px * 1);
	}
}
@media (max-width: 1600px) {
	.philosophy::after {
		width: calc(50vw);
		height: calc(50vw * 1);
		background-size: 100%;
	}
}
@media (max-width: 999px) {
	.philosophy::after {
		width: calc(65vw);
		height: calc(65vw * 1);
		background-size: 100%;
		top: 50%;
		left: 0%;
		transform: translate(-10%, -55%);
	}
}
@media (max-width: 480px) {
	.philosophy::after {
		width: calc(100vw);
		height: calc(100vw);
		transform: translate(-0%, -0%);
		top: 120px;
	}
}
.philosophy .philosophy_inner {
	width: 50%;
	height: 980px;
	margin: 0 0 0 auto;
	color: #000;
	text-shadow: 2px 2px 5px rgba(255, 255, 255, 0.25);
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: flex-start;
	position: relative;
	z-index: 1;
}
@media (max-width: 2000px) {
	.philosophy .philosophy_inner {
		height: calc(1600px * 0.44);
	}
}
@media (max-width: 1600px) {
	.philosophy .philosophy_inner {
		height: auto;
		min-height: calc(100vw * 0.5);
		padding: 4em 0;
	}
}
@media (max-width: 999px) {
	.philosophy .philosophy_inner {
		width: 100%;
		height: calc(100vw * 1.4 * 0.49);
	}
}
@media (max-width: 768px) {
	.philosophy .philosophy_inner {
		width: 100%;
		height: auto;
	}
}
.philosophy h2 {
	color: #000;
	margin: 1em 0 1em;
}
@media (max-width: 999px) {
	.philosophy h2 {
		margin-left: 50vw;
	}
}
@media (max-width: 768px) {
	.philosophy h2 {
		font-size: 2em;
	}
}
@media (max-width: 480px) {
	.philosophy h2 {
		margin-left: 0;
		font-size: 7.5vw;
	}
}
.philosophy h2 span {
	font-size: 0.4em;
	position: absolute;
	left: 0%;
	bottom: -1.5em;
	transform: translateX(-0%);
	white-space: nowrap;
}
@media (max-width: 480px) {
	.philosophy h2 span {
		font-size: 12px;
	}
}
.philosophy h2::after {
	content: "";
	width: 100%;
	height: 0.5em;
	background: #fff8a0;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: -1;
}
.philosophy h3 {
	margin: 1em 0 1.5em;
	font-size: 2em;
	line-height: 1.25;
}
@media (max-width: 999px) {
	.philosophy h3 {
		margin-left: 50vw;
	}
}
@media (max-width: 480px) {
	.philosophy h3 {
		margin-left: 0;
		font-size: 6vw;
	}
}
/*  Feature
----------------------------------------------------*/
.feature {
	width: 92%;
	max-width: 1200px;
	margin: 0 auto;
	position: relative;
	mix-blend-mode: darken;
}
@media (max-width: 480px) {
	.feature {
		padding-top: 60vw;
	}
}
.feature::after {
	content: "";
	width: 920px;
	height: calc(920px * 0.8229);
	background-image: url(../assets/img/feature/bg_feature02.png);
	background-position: right top;
	background-size: 100%;
	background-repeat: no-repeat;
	z-index: -1;
	position: absolute;
	top: 50%;
	left: 48%;
	transform: translateY(-50%);
}
/*@media (max-width: 2000px) {
  .feature::after {
    width: 50vw;
    height: calc(50vw * 0.8229);
    background-image: url(../assets/img/feature/bg_feature02.png);
    background-size: 100%;
    top: 50%;
    left: 48%;
    right: auto;
      transform: translateY(-50%);
  }
}*/
@media (max-width: 1600px) {
	.feature::after {
		width: 60vw;
		height: calc(60vw * 0.8229);
		background-image: url(../assets/img/feature/bg_feature02.png);
		top: 50%;
		left: 48%;
		transform: translateY(-50%);
	}
}
@media (max-width: 1000px) {
	.feature::after {
		width: 60vw;
		height: calc(60vw * 0.8229);
		background-image: url(../assets/img/feature/bg_feature02.png);
		top: 0%;
		right: -20%;
		transform: translateY(-0%);
	}
}
@media (max-width: 480px) {
	.feature::after {
		width: 100vw;
		height: calc(100vw * 0.8229);
		background-image: url("../assets/img/feature/bg_feature02.png");
		top: 0%;
		left: -4%;
		right: 0%;
		transform: translateY(-0%);
	}
}
.feature .feature_inner {
	width: 50%;
	margin: 0 0 0;
	text-shadow: 2px 2px 8px rgba(255, 255, 255, 1);
	position: relative;
	z-index: 1;
}
@media (max-width: 999px) {
	.feature .feature_inner {
		width: 100%;
	}
}
.feature h2 {
	margin: 1em 0 1.5em;
}
@media (max-width: 768px) {
	.feature h2 {
		font-size: 2em;
	}
}
@media (max-width: 480px) {
	.feature h2 {
		font-size: 7.5vw;
	}
}
.feature h2 span {
	font-size: 0.4em;
	position: absolute;
	left: 0%;
	bottom: -1.5em;
	transform: translateX(-0%);
	white-space: nowrap;
}
@media (max-width: 480px) {
	.feature h2 span {
		font-size: 12px;
	}
}
.feature h2::after {
	content: "";
	width: 100%;
	height: 0.5em;
	background: #fff8a0;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: -1;
}
.feature_points {
	font-size: 1.25em;
	text-indent: -1em;
	padding-left: 1em;
}
.feature_points li * {
	text-indent: 0;
}
.feature_points li.point {
	color: #219688;
}
.feature_points li .caption {
	text-indent: 0;
	font-size: 0.8em;
	color: #333;
}
.feature_text {
	font-size: 1.25em;
	color: #219688;
	margin-top: 1em;
}
/*  About
----------------------------------------------------*/
.about {
	width: 92%;
	max-width: 1200px;
	margin: 0 auto;
}
.about .about_inner {
	width: 100%;
	margin: 0 auto;
	text-align: center;
}
@media (max-width: 999px) {
	.about .about_inner {
		width: 100%;
	}
}
.about h2 {
	margin: 1em 0 1.5em;
}
@media (max-width: 768px) {
	.about h2 {
		font-size: 2em;
	}
}
@media (max-width: 480px) {
	.about h2 {
		font-size: 7.5vw;
	}
}
.about h2 span {
	font-size: 0.4em;
	position: absolute;
	left: 50%;
	bottom: -1.5em;
	transform: translateX(-50%);
	white-space: nowrap;
}
@media (max-width: 480px) {
	.about h2 span {
		font-size: 12px;
	}
}
.about h2::after {
	content: "";
	width: 100%;
	height: 0.5em;
	background: #fff8a0;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: -1;
}
.about_data {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}
@media (max-width: 999px) {
	.about_data {
		flex-direction: column;
		align-items: center;
		row-gap: 2em;
	}
}
.about_data dl {
	width: 48%;
	/*border: 1px solid #ddd;
	background: #fff;*/
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	justify-content: flex-start;
	column-gap: 1em;
	row-gap: 1em;
}
@media (max-width: 999px) {
	.about_data dl {
		width: 100%;
		max-width: 720px;
	}
}
.about_data dt {
	width: 7em;
	background: #000;
	color: #fff;
	border-radius: 0.5em;
	display: flex;
	justify-content: center;
	align-items: center;
}
@media (max-width: 999px) {
	.about_data dt {
		font-size: 0.9375em;
	}
}
.about_data dd {
	width: calc(100% - 8em);
	text-align: left;
}
.about_data .about_map {
	width: 48%;
	border-radius: 1em;
	overflow: hidden;
}
@media (max-width: 999px) {
	.about_data .about_map {
		width: 100%;
		max-width: 720px;
	}
	.about_data dd br:nth-of-type(1), .about_data dd br:nth-of-type(2) {
		display: none;
	}
}
@media (max-width: 480px) {}
.about_data .about_map img {
	width: 100%;
	height: auto;
	vertical-align: middle;
}
.about_map_google {
	width: 100%;
	height: auto;
	padding-bottom: 56.25%;
	position: relative;
}
.about_map_google iframe {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}
/*  Service
----------------------------------------------------*/
.service {
	width: 92%;
	max-width: 1200px;
	margin: 0 auto;
}
.service .service_inner {
	width: 100%;
	margin: 0 auto;
	text-align: center;
}
@media (max-width: 999px) {
	.service .service_inner {
		width: 100%;
	}
}
.service h2 {
	margin: 1em 0 1.5em;
}
@media (max-width: 768px) {
	.service h2 {
		font-size: 2em;
	}
}
@media (max-width: 480px) {
	.service h2 {
		font-size: 7.5vw;
	}
}
.service h2 span {
	font-size: 0.4em;
	position: absolute;
	left: 50%;
	bottom: -1.5em;
	transform: translateX(-50%);
	white-space: nowrap;
}
.service h2::after {
	content: "";
	width: 100%;
	height: 0.5em;
	background: #fff8a0;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: -1;
}
.service .service_info {
	display: flex;
	column-gap: 2em;
	row-gap: 2em;
	flex-wrap: wrap;
	text-align: left;
}
.service .service_info &gt; div {
	width: calc((100% - 2em) / 2);
	display: flex;
	row-gap: 2em;
	flex-wrap: wrap;
}
@media (max-width: 999px) {
	.service .service_info &gt; div {
		width: 100%;
	}
}
.service .service_info &gt; div &gt; div {
	width: 100%;
	background: rgba(255, 255, 255, 0);
	border: 1px solid rgba(255, 255, 255, 1);
	position: relative;
	z-index: 1;
	padding: 2.5em 2.5em 2.5em 2.5em;
	box-shadow: 0px 0px 10px rgba(240, 132, 74, 0.25);
}
@media (max-width: 999px) {
	.service .service_info &gt; div &gt; div {
		padding: 2.25em;
	}
}
.service .service_info &gt; div &gt; div::after {
	content: "";
	width: calc(100% - 20px);
	height: calc(100% - 20px);
	background: rgba(255, 255, 255, 0.85);
	position: absolute;
	top: 10px;
	left: 10px;
	z-index: -1;
	box-shadow: 0px 0px 20px rgba(240, 132, 74, 0.25);
}
.service .service_info &gt; div &gt; div h3 {
	font-size: 2em;
	color: #f18c3c;
	margin-top: 0;
}
.service .service_info &gt; div &gt; div &gt; div {
	display: flex;
	column-gap: 2em;
}
@media (max-width: 999px) {
	.service .service_info &gt; div &gt; div &gt; div {
		column-gap: 1em;
	}
}
.service .service_info &gt; div:nth-of-type(1) &gt; div &gt; div {
	justify-content: space-between;
}
.service .service_info &gt; div:nth-of-type(2) &gt; div &gt; div {
	flex-wrap: wrap;
	justify-content: flex-end;
}
.service .service_info &gt; div &gt; div &gt; div ul li {
	text-indent: -1em;
	padding-left: 1em;
}
.service .service_info &gt; div:nth-of-type(2) &gt; div &gt; div ul {
	width: 100%;
}
.service .service_info &gt; div &gt; div &gt; div img {
	display: inline-block;
	margin-bottom: -1.25em;
}
.service .service_info &gt; div:nth-of-type(2) &gt; div:nth-of-type(1) &gt; div {
	justify-content: space-between;
	flex-wrap: nowrap;
	align-items: flex-end;
}
.service .service_info &gt; div:nth-of-type(2) &gt; div:nth-of-type(1) &gt; div ul {
	width: auto;
}
@media (max-width: 480px) {
	.service .service_info &gt; div:nth-of-type(n) &gt; div:nth-of-type(n) &gt; div {
		flex-wrap: wrap;
		justify-content: flex-end;
	}
	.service .service_info &gt; div:nth-of-type(n) &gt; div:nth-of-type(n) &gt; div ul {
		width: 100%;
	}
}
.service {}
.service {}
.service {}
/*  Area
----------------------------------------------------*/
.area {
	width: 92%;
	max-width: 1200px;
	margin: 0 auto;
}
.area .area_inner {
	width: 100%;
	margin: 0 auto;
	text-align: center;
	position: relative;
	z-index: 1;
}
@media (max-width: 999px) {
	.area .area_inner {
		width: 100%;
	}
}
.area_copy {
	font-size: 28px;
}
.area_copy {
	word-break: keep-all;
	overflow-wrap: break-word;
}
@media (max-width: 1280px) {
	.area_copy {
		font-size: 2.5vw;
	}
}
@media (max-width: 768px) {
	.area_copy {
		font-size: 3vw;
	}
}
@media (max-width: 480px) {
	.area_copy {
		font-size: 4.75vw;
		line-height: 1.4;
	}
	.area_copy br:nth-of-type(1) {
		display: none;
	}
}
.area h2 {
	margin: 1em 0 1.5em;
}
@media (max-width: 768px) {
	.area h2 {
		font-size: 2em;
	}
}
@media (max-width: 480px) {
	.area h2 {
		font-size: 7.5vw;
	}
}
.area h2 span {
	font-size: 0.4em;
	position: absolute;
	left: 50%;
	bottom: -1.5em;
	transform: translateX(-50%);
	white-space: nowrap;
}
@media (max-width: 480px) {
	.area h2 span {
		font-size: 12px;
	}
}
.area h2::after {
	content: "";
	width: 100%;
	height: 0.5em;
	background: #fff8a0;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: -1;
}
.area .area_map {
	width: 100%;
	max-width: 960px;
	margin: 0 auto;
}
.area .area_map img {
	width: 100%;
	vertical-align: middle;
	border-radius: 1em;
	border: 5px solid #fabe00;
}
@media (max-width: 999px) {
	.area .area_map img {
		border: 0.8vw solid #fabe00;
	}
}
.area .area_info {
	width: 100%;
	display: flex;
	column-gap: 6%;
	margin-top: 4em;
	justify-content: center;
}
.area .area_info &gt; div {
	text-align: center;
	/*width: calc((100% - 6%) / 2);*/
	width: 100%;
	max-width: 960px;
}
.area .area_info &gt; div .area_title {
	background: #49b78d;
	color: #fff;
	height: 2em;
	border-radius: 1em;
	display: flex;
	justify-content: center;
	align-items: center;
}
.area .area_info &gt; div:nth-of-type(1) .area_title {
	background: #49b78d;
}
.area .area_info &gt; div:nth-of-type(2) .area_title {
	background: #fabe00;
}
.area .area_info ul {
	margin: 0 auto;
	display: inline-flex;
	flex-direction: column;
	justify-content: center;
}
.area .area_info ul &gt; li {
	display: flex;
	column-gap: 0.5em;
	font-size: 1.25em;
	align-items: baseline;
	margin-top: 0.75em;
}
.area .area_info ul &gt; li span {
	background: #000;
	color: #fff;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 5em;
	padding: 0em 0.25em;
	border-radius: 8px;
}
.area .area_info {}
.area {}
/*  Contact
----------------------------------------------------*/
.contact {
	width: 92%;
	max-width: 1200px;
	margin: 0 auto;
}
.contact .contact_inner {
	width: 100%;
	margin: 0 auto;
	text-align: center;
	position: relative;
	z-index: 1;
}
@media (max-width: 999px) {
	.contact .contact_inner {
		width: 100%;
	}
}
.contact h2 {
	margin: 1em 0 1.5em;
}
.contact h2 span {
	font-size: 0.4em;
	position: absolute;
	left: 50%;
	bottom: -1.5em;
	transform: translateX(-50%);
	white-space: nowrap;
}
.contact h2::after {
	content: "";
	width: 100%;
	height: 0.5em;
	background: #fff8cf;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: -1;
}
.contact .table_stack_sp {
	border-radius: 20px;
	overflow: hidden;
}
@media (max-width: 480px) {
	.contact .table_stack_sp {
		border-radius: 0;
		overflow: hidden;
	}
}
.contact .table_stack_sp th {
	background: #fffbda;
}
.contact .table_stack_sp tr th, .contact .table_stack_sp tr td {
	border-bottom: 1px solid #eee;
}
.contact .table_stack_sp tr:last-of-type th, .contact .table_stack_sp tr:last-of-type td {
	border-bottom: none;
}
.contact .table_stack_sp td ul {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	column-gap: 0.5em;
	row-gap: 0.5em;
}
.contact .table_stack_sp td ul &gt; li {
	border: 1px solid #ddd;
	border-radius: 0.5em;
	width: calc((100% - 0.5em) / 2);
	padding: 0.5em;
}
.contact .table_stack_sp td input {
	border: 1px solid #ddd;
	border-radius: 0.5em;
}
.contact .table_stack_sp td textarea {
	border: 1px solid #ddd;
	border-radius: 0.5em;
}
.contact .contact_check button.set {
	background: #ec8f24;
	color: #fff;
	cursor: pointer;
	transition: 0.3s;
}
.contact .form_link {
	font-weight: 700;
	font-size: 1.2em;
}
/*  Area
----------------------------------------------------*/
section:first-child.page_hgead {
	padding-top: 200px;
}
@media (max-width: 480px) {
	section:first-child.page_hgead {
		padding-top: 160px;
	}
}
h2.group_logo {
	margin-top: 0;
	display: flex;
	flex-direction: row;
	justify-content: center;
	align-items: center;
	column-gap: 0.5em;
	width: 92%;
	max-width: calc(400px + 0.5em + 64px);
	border: none;
	margin: 0 auto 1em;
}
h2.group_logo::after {
	content: none;
}
h2.group_logo &gt; img {
	width: calc(100% - 0.5em - 64px);
}
.sns_icon {
	width: 64px;
	height: 64px;
	display: inline-flex;
	justify-content: flex-start;
	align-items: flex-start;
}
.sns_icon img {
	width: 64px;
	height: 64px;
	vertical-align: top;
}</pre></body></html>