@charset "UTF-8";
/*!-- Base
================================================== */
* {
	font-family: -apple-system, BlinkMacSystemFont, Roboto, "Segoe UI", "Helvetica Neue", HelveticaNeue, Noto Sans JP, YuGothic, "Yu Gothic Medium", "Yu Gothic", Verdana, Meiryo, sans-serif;
	font-feature-settings: "palt";
	font-smoothing: antialiased;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: antialiased;
}
html, body {
	height: 100%;
	width: 100%;
	margin: 0;
	padding: 0;
	left: 0;
	top: 0;
	font-size: 87.5%;
}
html.iPhone, html.iPhone body {
	font-size: 100%;
}
html {
	scroll-behavior: smooth;
}
body {
	font-size: 1rem;
	font-weight: 400;
	color: #6F767D;
	line-height: 1;
}
body:after {
	content: "";
	display: table;
	clear: both;
}
h1, h2, h3, h4, h5 {
	font-size: 1rem;
	font-weight: 400;
	line-height: 1;
}
p {
	line-height: 2;
	text-align: justify;
}
p a {
	font-weight: 700;
	color: #f4a116;
	text-decoration-line: underline;
	text-decoration-color: #f4a116;
	text-decoration-thickness: 1px;
	text-underline-offset: 0.125rem;
}
p strong {
	font-weight: 700;
}
a {
	-webkit-transition: all 0.25s;
	-moz-transition: all 0.25s;
	transition: all 0.25s;
}
main img {
	border-radius: 1rem;
}
/*!-- Header + Navigation
================================================== */
#header {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 456;
	width: 100%;
	height: 60px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	background: #fff;
	box-shadow: 0 0.25rem 1rem rgba(0, 0, 0, 0.1);
}
#header h1, #logo {
	margin: 0;
	padding: 0 1rem;
}
#header h1 img, #logo img {
	height: calc(60px - 1.5rem);
	width: auto;
}
#hamburger {
	display: block;
	position: relative;
	width: 60px;
	height: 60px;
	background: #004994;
}
#hamburger span {
	display: block;
	position: absolute;
	width: 32px;
	height: 2px;
	left: 14px;
	background: #fff;
	transition: 0.3s ease-in-out;
}
#hamburger span:nth-child(1) {
	top: 14px;
}
#hamburger span:nth-child(2) {
	top: 22px;
}
#hamburger span:nth-child(3) {
	top: 30px;
}
#hamburger.active {
	display: block;
	position: fixed;
	right: 0;
	top: 0;
	width: 60px;
	height: 60px;
	background: #0f1e2d;
	z-index: 789;
}
#hamburger.active span:nth-child(1) {
	top: 20px;
	left: 14px;
	transform: rotate(-45deg);
}
#hamburger.active span:nth-child(2) {
	opacity: 0;
}
#hamburger.active span:nth-child(3) {
	top: 20px;
	transform: rotate(45deg);
}
#hamburger b {
	display: block;
	position: absolute;
	bottom: 0.625rem;
	left: 50%;
	transform: translateX(-50%);
	color: #fff;
	font-size: 0.75rem;
	font-weight: 400;
	white-space: nowrap;
}
#hamburger b:last-of-type {
	display: none;
}
#hamburger.active b:first-of-type {
	display: none;
}
#hamburger.active b:last-of-type {
	display: block;
}
#hamburger-menu {
	display: none;
	position: fixed;
	left: 0;
	top: 0;
	z-index: 788;
	width: 100vw;
	height: 100vh;
	background: #004994;
	color: #fff;
}
#hamburger-menu.active {
	display: block;
}
#hamburger-menu .logo {
	position: fixed;
	top: 0;
	margin: 0;
	padding: 0.75rem 1rem;
	width: 100%;
	height: 61px;
	border-bottom: 1px solid rgba(255, 255, 255, .3);
	background: #004994;
}
#hamburger-menu .logo img {
	height: calc(60px - 1.5rem);
	width: auto;
}
#hamburger-menu .navigation {
	margin: 60px 0 0;
	width: 100%;
	height: calc(100vh - 120px);
	overflow-y: scroll;
}
#hamburger-menu .navigation .menu {
	margin: 0 auto 1rem;
	width: 100%;
}
#hamburger-menu .navigation .menu > li {
	margin: 0 auto;
	padding: 0 1rem;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: rgba(255, 255, 255, .3);
	width: 100%;
}
#hamburger-menu .navigation .menu > li > a {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin: 0 auto;
	padding: 0;
	width: 100%;
	height: 60px;
	line-height: 60px;
	font-size: 1.25rem;
	position: relative;
}
#hamburger-menu .navigation .menu > li > a span::before, #hamburger-menu .navigation .menu > li > a span::after {
	content: '';
	display: block;
	width: 1rem;
	height: 1px;
	position: absolute;
	right: 1rem;
	top: 50%;
	transform: translateY(-50%);
}
#hamburger-menu .navigation .menu > li > a span::after {
	background: #fff;
	transform: translateY(-50%);
	transition: 0.1s;
}
#hamburger-menu .navigation .menu > li > a span:nth-of-type(1)::after {
	transform: rotate(90deg);
}
#hamburger-menu .navigation .menu > li > a.active span:nth-of-type(1)::after {
	transform: rotate(0deg);
	transition: 0.1s;
}
#hamburger-menu .navigation .menu > li:last-child > a > i {
	display: none;
}
#hamburger-menu .navigation .menu > li > .wrap {
	margin: 0 auto 1rem;
	padding: 0 1rem;
	background-color: #0097B8;
}
#hamburger-menu .navigation .menu > li .wrap a {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin: 0 auto;
	padding: 1.5rem 0;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: rgba(255, 255, 255, .3);
	width: 100%;
	line-height: 1;
	font-size: 1.25rem;
}
#hamburger-menu .navigation .menu > li .wrap a i {
	display: block;
	width: 24px;
	height: 24px;
	background-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 24 24"><path fill="%23ffffff" d="m12.007 2c-5.518 0-9.998 4.48-9.998 9.998 0 5.517 4.48 9.997 9.998 9.997s9.998-4.48 9.998-9.997c0-5.518-4.48-9.998-9.998-9.998zm1.523 6.21s1.502 1.505 3.255 3.259c.147.147.22.339.22.531s-.073.383-.22.53c-1.753 1.754-3.254 3.258-3.254 3.258-.145.145-.335.217-.526.217-.192-.001-.384-.074-.531-.221-.292-.293-.294-.766-.003-1.057l1.977-1.977h-6.693c-.414 0-.75-.336-.75-.75s.336-.75.75-.75h6.693l-1.978-1.979c-.29-.289-.287-.762.006-1.054.147-.147.339-.221.53-.222.19 0 .38.071.524.215z" /></svg>');
}
#hamburger-menu .navigation .menu > li .wrap li:last-of-type a {
	border-bottom: 0 none;
}
#hamburger-menu .navigation .sns {
	display: flex;
	justify-content: center;
	margin: 0 auto 1rem;
	width: 100%;
}
#hamburger-menu .navigation .sns li {
	padding: 0 1rem;
}
#hamburger-menu .navigation .sns li a {
	display: block;
	width: 100%;
	height: 100%;
	text-align: center;
	font-size: 1rem;
	color: #fff;
}
#hamburger-menu .navigation .sns li i {
	display: block;
	margin: 0 auto 0.5rem;
	width: 3rem;
	height: 3rem;
}
#hamburger-menu .navigation .sns li i.yt {
	background: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 24 24"><path fill="%23ffffff" d="M19.615 3.184c-3.604-.246-11.631-.245-15.23 0-3.897.266-4.356 2.62-4.385 8.816.029 6.185.484 8.549 4.385 8.816 3.6.245 11.626.246 15.23 0 3.897-.266 4.356-2.62 4.385-8.816-.029-6.185-.484-8.549-4.385-8.816zm-10.615 12.816v-8l8 3.993-8 4.007z" /></svg>') no-repeat center center;
}
#hamburger-menu .navigation .sns li i.ig {
	background: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 24 24"><path fill="%23ffffff" d="M12 2.163c3.204 0 3.584.012 4.85.07 3.252.148 4.771 1.691 4.919 4.919.058 1.265.069 1.645.069 4.849 0 3.205-.012 3.584-.069 4.849-.149 3.225-1.664 4.771-4.919 4.919-1.266.058-1.644.07-4.85.07-3.204 0-3.584-.012-4.849-.07-3.26-.149-4.771-1.699-4.919-4.92-.058-1.265-.07-1.644-.07-4.849 0-3.204.013-3.583.07-4.849.149-3.227 1.664-4.771 4.919-4.919 1.266-.057 1.645-.069 4.849-.069zm0-2.163c-3.259 0-3.667.014-4.947.072-4.358.2-6.78 2.618-6.98 6.98-.059 1.281-.073 1.689-.073 4.948 0 3.259.014 3.668.072 4.948.2 4.358 2.618 6.78 6.98 6.98 1.281.058 1.689.072 4.948.072 3.259 0 3.668-.014 4.948-.072 4.354-.2 6.782-2.618 6.979-6.98.059-1.28.073-1.689.073-4.948 0-3.259-.014-3.667-.072-4.947-.196-4.354-2.617-6.78-6.979-6.98-1.281-.059-1.69-.073-4.949-.073zm0 5.838c-3.403 0-6.162 2.759-6.162 6.162s2.759 6.163 6.162 6.163 6.162-2.759 6.162-6.163c0-3.403-2.759-6.162-6.162-6.162zm0 10.162c-2.209 0-4-1.79-4-4 0-2.209 1.791-4 4-4s4 1.791 4 4c0 2.21-1.791 4-4 4zm6.406-11.845c-.796 0-1.441.645-1.441 1.44s.645 1.44 1.441 1.44c.795 0 1.439-.645 1.439-1.44s-.644-1.44-1.439-1.44z" /></svg>') no-repeat center center;
}
/*!-- Hero
================================================== */
#hero {
	margin: 60px auto 7.25rem;
	padding: 0;
	width: 100%;
	height: calc(100vh - 180px);
	position: relative;
}
#hero.-common {
	margin: 60px auto 0;
	height: 120px;
	background-color: #004994;
	background-image: url("../images/bg_cmn_2.jpg");
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}
.webp #hero.-common {
	background-image: url("../images/bg_cmn_2.webp");
}
.avif #hero.-common {
	background-image: url("../images/bg_cmn_2.avif");
}
#hero.-common h1 {
	position: absolute;
	left: 1.5rem;
	top: 50%;
	transform: translateY(-50%);
	color: #fff;
	font-size: 1.5rem;
	font-weight: 700;
	text-shadow: 1px 1px 0.25rem #000;
	line-height: 1.5;
}
#hero.-common h1 span {
	display: block;
	margin: 0 0 0.5rem;
	font-size: 0.875rem;
}
#slidebox .wrap {
	width: 100%;
	height: calc(100vh - 180px);
}
#slidebox .wrap .inner {
	width: 100%;
	height: 100%;
	position: relative;
}
#slidebox .wrap .inner .pic {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 2;
}
#slidebox .wrap .inner .txt {
	position: absolute;
	top: auto;
	bottom: -3rem;
	left: 50%;
	transform: translateX(-50%);
	width: 80%;
	z-index: 3;
}
#slidebox .wrap.-catch-3 .inner .pic {
	top: -3rem
}
/*!-- Footer
================================================== */
/*!--[ Pagetop ]--*/
#pagetop {
	position: fixed;
	right: 1rem;
	bottom: calc(60px + 1rem);
	border-radius: 1rem;
	background: #fff;
	box-shadow: 0 0.25rem 1rem rgba(0, 0, 0, 0.1);
	z-index: 123;
}
#pagetop .contact, #pagetop .youtube, #pagetop .instagram {
	display: none;
}
#pagetop a {
	display: flex;
	flex-direction: column;
	align-items: center;
	padding: 0.5rem;
	width: 60px;
	height: 60px;
	color: #0F1E2D;
}
#pagetop a i {
	display: block;
	margin: 0 auto 0.25rem;
	width: 24px;
	height: 24px;
}
#pagetop .pagetop a i {
	background: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 24 24"><path fill="%230F1E2D" d="M0 16.67l2.829 2.83 9.175-9.339 9.167 9.339 2.829-2.83-11.996-12.17z" /></svg>') no-repeat center center;
}
#pagetop a b {
	font-size: 0.5rem;
	text-align: center;
}
/*!--[ Footer ]--*/
#footer {
	display: block;
	position: fixed;
	bottom: 0;
	left: 0;
	z-index: 456;
	margin: 0 auto;
	width: 100%;
	height: 60px;
	background: #fff;
}
#footer ul {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	padding: 0.25rem;
}
#footer ul li {
	margin: 0 auto;
	padding: 0.25rem;
	width: 50%;
	display: flex;
	justify-content: center;
	align-items: center;
}
#footer ul li a {
	margin: 0 auto;
	padding: 0.5rem 0.25rem;
	border: 1px solid #004994;
	border-radius: 0.5rem;
	width: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
}
#footer ul li:nth-of-type(1) a {
	background: #004994;
	color: #fff;
}
#footer ul li:nth-of-type(2) a {
	background: #004994;
	color: #fff;
}
#footer ul li a i {
	display: block;
	margin: 0 0.5rem 0 0;
	width: 1.5rem;
	height: 1.5rem;
}
#footer ul li.contact-mail a i {
	background: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 24 24"><path fill="%23ffffff" d="M12 12.713l-11.985-9.713h23.97l-11.985 9.713zm0 2.574l-12-9.725v15.438h24v-15.438l-12 9.725z" /></svg>') no-repeat center center;
}
#footer ul li.contact-phone a i {
	background: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 24 24"><path fill="%23ffffff" d="M20 2c0-1.105-.896-2-2-2h-12c-1.105 0-2 .896-2 2v20c0 1.104.895 2 2 2h12c1.104 0 2-.896 2-2v-20zm-9.501 0h3.001c.276 0 .5.224.5.5s-.224.5-.5.5h-3.001c-.275 0-.499-.224-.499-.5s.224-.5.499-.5zm1.501 20c-.553 0-1-.448-1-1s.447-1 1-1c.552 0 .999.448.999 1s-.447 1-.999 1zm6-3h-12v-14.024h12v14.024z" /></svg>') no-repeat center center;
}
#footer ul li a div {
	display: flex;
	justify-content: flex-start;
	align-items: center;
}
#footer ul li a div b {
	margin: 0 0.25rem 0 0;
	font-size: 1.125rem;
	font-weight: 700;
}
#footer ul li a div span {
	font-size: 0.75rem;
}
#footer.active {
	background: #004994;
}
#footer.active ul li a {
	border: 1px solid #fff;
}
#footer.active ul li:nth-of-type(1) a, #footer.active ul li:nth-of-type(2) a {
	background: #fff;
	color: #004994;
}
#footer.active ul li.contact-mail a i {
	background: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 24 24"><path fill="%23004994" d="M12 12.713l-11.985-9.713h23.97l-11.985 9.713zm0 2.574l-12-9.725v15.438h24v-15.438l-12 9.725z" /></svg>') no-repeat center center;
}
#footer.active ul li.contact-phone a i {
	background: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 24 24"><path fill="%23004994" d="M20 2c0-1.105-.896-2-2-2h-12c-1.105 0-2 .896-2 2v20c0 1.104.895 2 2 2h12c1.104 0 2-.896 2-2v-20zm-9.501 0h3.001c.276 0 .5.224.5.5s-.224.5-.5.5h-3.001c-.275 0-.499-.224-.499-.5s.224-.5.499-.5zm1.501 20c-.553 0-1-.448-1-1s.447-1 1-1c.552 0 .999.448.999 1s-.447 1-.999 1zm6-3h-12v-14.024h12v14.024z" /></svg>') no-repeat center center;
}
/*!--[ Phone ]--*/
#phone {
	display: none;
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background: linear-gradient(-45deg, rgba(0, 151, 184, 1), rgba(0, 73, 148, 1)) fixed;
	z-index: 987;
	color: #fff;
}
_::-webkit-full-page-media, _:future, :root #phone {
	background: linear-gradient(-45deg, rgba(0, 151, 184, 1), rgba(0, 73, 148, 1));
}
#phone.activePhone {
	display: block;
}
#phone .logo {
	position: fixed;
	top: 0;
	margin: 0;
	padding: 0.75rem 1rem;
	width: 100%;
	height: 61px;
	border-bottom: 1px solid rgba(255, 255, 255, .3);
}
#phone .logo img {
	height: calc(60px - 1.5rem);
	width: auto;
}
#phone .close {
	position: fixed;
	right: 0;
	top: 0;
	width: 60px;
	height: 60px;
}
#phone .close a {
	display: block;
	width: 100%;
	height: 100%;
	text-align: center;
}
#phone .close a i {
	margin: 0.5rem auto;
	display: block;
	width: 32px;
	height: 32px;
	background: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 24 24"><path fill="%23ffffff" d="m12.012 2c5.518 0 9.997 4.48 9.997 9.998 0 5.517-4.479 9.997-9.997 9.997s-9.998-4.48-9.998-9.997c0-5.518 4.48-9.998 9.998-9.998zm-1.523 6.21s-1.502 1.505-3.255 3.259c-.147.147-.22.339-.22.531s.073.383.22.53c1.753 1.754 3.254 3.258 3.254 3.258.145.145.335.217.526.217.192-.001.384-.074.531-.221.292-.293.294-.766.003-1.057l-1.977-1.977h6.693c.414 0 .75-.336.75-.75s-.336-.75-.75-.75h-6.693l1.978-1.979c.29-.289.287-.762-.006-1.054-.147-.147-.339-.221-.53-.222-.19 0-.38.071-.524.215z" /></svg>') no-repeat center center;
}
#phone .close a b {
	display: block;
	position: absolute;
	bottom: 0.625rem;
	left: 50%;
	transform: translateX(-50%);
	color: #fff;
	font-size: 0.75rem;
	font-weight: 400;
	white-space: nowrap;
}
#phone .inner {
	position: absolute;
	left: 50%;
	top: 60%;
	transform: translate(-50%, -50%);
	width: 90%;
}
#phone .inner .number {
	margin: 0 auto 2rem;
}
#phone .inner .wrap {
	display: block;
	margin: 0 auto 3rem;
	width: 100%;
}
#phone .inner .wrap li {
	margin: 0 auto 1rem;
	width: 100%;
	display: flex;
	align-items: center;
}
#phone .inner .wrap li:last-of-type {
	margin: 0 auto;
}
#phone .inner .wrap li h4 {
	margin: 0 1rem 0 0;
	padding: 0.5rem 1rem;
	font-size: 1rem;
	font-weight: 700;
	color: #004994;
	background: #fff;
	width: 35%;
	max-width: 200px;
	text-align: center;
}
#phone .inner .wrap li p {
	font-size: 1.25rem;
}
main .button {
	margin: 0 auto;
	width: 100%;
	-webkit-transition: all 0.25s;
	-moz-transition: all 0.25s;
	transition: all 0.25s;
}
#phone .button a {
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 0 auto 2rem;
	padding: 2rem;
	width: 100%;
	max-width: 640px;
	background: #E69E2D;
	border-bottom: 0.5rem solid #C8822D;
	border-radius: 0.5rem;
	color: #fff;
	font-size: 1.5rem;
	font-weight: 700;
	overflow: hidden;
	position: relative;
}
#phone .button a span {
	margin: 0;
	z-index: 2;
}
#phone .button a i {
	width: 2rem;
	height: 2rem;
	margin: 0 0.5rem 0 0;
	background: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 24 24"><path fill="%23ffffff" d="M20 2c0-1.105-.896-2-2-2h-12c-1.105 0-2 .896-2 2v20c0 1.104.895 2 2 2h12c1.104 0 2-.896 2-2v-20zm-9.501 0h3.001c.276 0 .5.224.5.5s-.224.5-.5.5h-3.001c-.275 0-.499-.224-.499-.5s.224-.5.499-.5zm1.501 20c-.553 0-1-.448-1-1s.447-1 1-1c.552 0 .999.448.999 1s-.447 1-.999 1zm6-3h-12v-14.024h12v14.024z" /></svg>') no-repeat center center;
	z-index: 2;
}
/*!--[ Breadcrumb ]--*/
#breadcrumb {
	margin: 0 auto;
	padding: 1rem 0;
	width: 100%;
	background: #E69E2D;
	color: #fff;
}
#breadcrumb ul {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	flex-wrap: wrap;
	margin: 0 auto;
	width: 90%;
}
#breadcrumb ul li, #breadcrumb ul li a {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	line-height: 2;
	color: #fff;
}
#breadcrumb ul li i {
	display: block;
	margin: 0 0.5rem 0 0;
	width: 1.25rem;
	height: 1.25rem;
	background: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 24 24"><path fill="%23ffffff" d="M21 13v10h-6v-6h-6v6h-6v-10h-3l12-12 12 12h-3zm-1-5.907v-5.093h-3v2.093l3 3z" /></svg>') no-repeat center center;
}
#breadcrumb ul li::after {
	display: block;
	content: "";
	margin: 0 0.5rem;
	width: 1rem;
	height: 1rem;
	background: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 24 24"><path fill="%23ffffff" d="M4 .755l14.374 11.245-14.374 11.219.619.781 15.381-12-15.391-12-.609.755z" /></svg>') no-repeat center center;
}
#breadcrumb ul li:last-child {
	font-weight: 700;
}
#breadcrumb ul li:last-child::after {
	display: none;
}
/*!--[ Address ]--*/
#address {
	margin: 0 auto;
	width: 100%;
}
#address .about {
	margin: 0 auto;
	padding: 3rem 1.5rem;
	width: 100%;
	background: #0F1E2D;
	color: #fff;
}
#address .about .logo {
	margin: 0 auto 1.5rem;
}
#address .about .pic {
	margin: 0 auto 2rem;
}
#address .about .pic img {
	border-radius: 1rem;
}
#address .about .detail {
	margin: 0 auto;
	width: 100%;
}
#address .about .detail li {
	padding: 1rem 0;
	border-bottom: 1px dotted #4D6C8B;
	width: 100%;
}
#address .about .detail li:last-child {
	padding: 1rem 0 0;
	border-bottom: 0 none;
}
#address .about .detail li dl {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	width: 100%;
}
#address .about .detail li dl dt {
	margin: 0 1rem 0 0;
	width: 35%;
	padding: 0.5rem;
	text-align: center;
	color: #fff;
	background: #0097B8;
	line-height: 1.5;
}
#address .about .detail li dl dd {
	margin: 0;
	width: auto;
	color: #fff;
	line-height: 1.5;
}
#address .menu {
	margin: 0 auto;
	padding: 3rem 1rem;
	width: 100%;
	background: #002C59;
	color: #fff;
}
#address .menu .wrap {
	margin: 0 auto 2rem;
	padding: 0 0 2rem;
	border-bottom: 1px solid #4D6C8B;
}
#address .menu .wrap:last-of-type {
	margin: 0 auto;
	padding: 0;
	border-bottom: 0 none;
}
#address .menu .wrap p {
	margin: 0 auto 1.5rem;
	font-size: 1.25rem;
	font-weight: 700;
	color: #fff;
}
#address .menu .wrap .submenu {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	margin: -0.75rem 0 -0.75rem -0.75rem;
}
#address .menu .wrap .submenu li {
	padding: 0.75rem 0 0.75rem 0.75rem;
}
#address .menu .wrap .submenu li::before {
	padding: 0 0.75rem 0 0;
	content: "|";
	color: #4D6C8B;
}
#address .menu .wrap .submenu li:first-child::before {
	display: none;
}
#address .menu .button .phone {
	margin: 0 auto 2rem;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	padding: 1rem;
	background: #1A426A;
	height: 12.5rem;
}
#address .menu .button > div > p {
	margin: 0 auto 1rem;
	display: flex;
	justify-content: center;
	align-items: center;
}
#address .menu .button > div > p > span {
	display: block;
	margin: 0 0.5rem 0 0;
	padding: 0.5rem;
	border-radius: 1rem;
	background: #F1DB2B;
}
#address .menu .button > div > p > span i {
	display: block;
	width: 1.5rem;
	height: 1.5rem;
}
#address .menu .button > div > p > b {
	font-size: 1.125rem;
	font-weight: 700;
	line-height: 1;
}
#address .menu .button .phone > p > span i {
	background: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 24 24"><path fill="%231A426A" d="M20 2c0-1.105-.896-2-2-2h-12c-1.105 0-2 .896-2 2v20c0 1.104.895 2 2 2h12c1.104 0 2-.896 2-2v-20zm-9.501 0h3.001c.276 0 .5.224.5.5s-.224.5-.5.5h-3.001c-.275 0-.499-.224-.499-.5s.224-.5.499-.5zm1.501 20c-.553 0-1-.448-1-1s.447-1 1-1c.552 0 .999.448.999 1s-.447 1-.999 1zm6-3h-12v-14.024h12v14.024z" /></svg>') no-repeat center center;
}
#address .menu .button .mail {
	margin: 0 auto;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	padding: 1rem;
	background: #1A426A;
	height: 12.5rem;
}
#address .menu .button .mail > p > span i {
	background: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 24 24"><path fill="%231A426A" d="M12 12.713l-11.985-9.713h23.97l-11.985 9.713zm0 2.574l-12-9.725v15.438h24v-15.438l-12 9.725z" /></svg>') no-repeat center center;
}
#address .menu .button .phone > p, #address .menu .button .phone > div {
	margin: 0 auto 1rem;
	width: 100%;
	line-height: 1;
}
#address .menu .button .phone > div > a {
	display: block;
	margin: 0 auto;
	width: 100%;
	height: 100%;
	line-height: 1;
}
#address .menu .button .phone > div > a > img {
	display: block;
	margin: 0 auto;
	width: auto;
	height: 70px;
	line-height: 1;
}
#address .menu .button .phone ul {
	margin: 0;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
}
#address .menu .button .phone ul li {
	margin: 0;
	display: flex;
	justify-content: center;
	align-items: center;
	width: auto;
	font-size: 0.875rem;
	line-height: 1;
}
#address .menu .button .phone ul li:first-of-type::after {
	content: "/";
	padding: 0 0.5rem;
}
#address .menu .button .phone ul li dl {
	margin: 0 auto;
	display: flex;
	justify-content: center;
	align-items: center;
}
#address .menu .button .phone ul li dl dt {
	margin: 0 0.25rem 0 0;
	white-space: nowrap;
}
#address .menu .button .phone ul li dl dd {
	white-space: nowrap;
}
#address .menu .button .mail div {
	margin: 0 auto;
	width: 100%;
}
#address .menu .button .mail div a {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 5rem;
	color: #fff;
	background: #315579;
	font-size: 1.5rem;
	font-weight: 700;
}
#address .menu .button .mail div a i {
	display: block;
	margin: 0 1rem 0 0;
	width: 2rem;
	height: 2rem;
	background: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 24 24"><path fill="%23ffffff" d="M0 12l11 3.1 7-8.1-8.156 5.672-4.312-1.202 15.362-7.68-3.974 14.57-3.75-3.339-2.17 2.925v-.769l-2-.56v7.383l4.473-6.031 4.527 4.031 6-22z" /></svg>') no-repeat center center;
}
#address .menu .button .mail div a:hover {
	color: #1A426A;
	background: #fff;
}
#address .menu .button .mail div a:hover i {
	background: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 24 24"><path fill="%231A426A" d="M0 12l11 3.1 7-8.1-8.156 5.672-4.312-1.202 15.362-7.68-3.974 14.57-3.75-3.339-2.17 2.925v-.769l-2-.56v7.383l4.473-6.031 4.527 4.031 6-22z" /></svg>') no-repeat center center;
}
#address small {
	display: block;
	margin: 0 auto;
	padding: 3rem 1rem calc(2.75rem + 60px) 1rem;
	width: 100%;
	font-size: 1rem;
	font-weight: 700;
}
#address small a {
	color: #0f1e2d;
}
/*!-- Main
================================================== */
/*!--[ Common ]--*/
section {
	margin: 0 auto;
	padding: 0;
	overflow: hidden;
}
section.-bg {
	background: #F5F9FA;
}
section.-bg-img {
	background-color: #004994;
	background-image: url("../images/bg_cmn_1.jpg");
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}
.webp section.-bg-img {
	background-image: url("../images/bg_cmn_1.webp");
}
.avif section.-bg-img {
	background-image: url("../images/bg_cmn_1.avif");
}
section .inner {
	margin: 0 auto;
	padding: 6rem 1.5rem;
	width: 100%;
}
.hgroup {
	display: block;
	margin: 0 auto 3rem;
	width: 100%;
}
.hgroup.-c {
	display: flex;
	justify-content: center;
	align-items: center;
}
.hgroup p {
	display: inline-block;
	position: relative;
	margin: 0 0 0.5rem !important;
	font-weight: 700;
	color: #004994;
	line-height: 1;
}
.hgroup p::after {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: -4rem;
	width: 3rem;
	height: 1px;
	background: #004994;
	content: '';
}
.hgroup h2 {
	font-size: 1.875rem;
	font-weight: 700;
	line-height: 1.5;
	color: #0f1e2d;
}
.hgroup h2 span {
	display: block;
}
.hgroup.-fcw p, .hgroup.-fcw h2 {
	color: #fff;
}
.hgroup.-fcw p::after {
	background: #fff;
}
main .button {
	margin: 0 auto;
	width: 100%;
	-webkit-transition: all 0.25s;
	-moz-transition: all 0.25s;
	transition: all 0.25s;
}
main .button a {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin: 0 auto;
	padding: 2rem;
	width: 100%;
	background: #E69E2D;
	border-bottom: 0.5rem solid #C8822D;
	border-radius: 0.5rem;
	color: #fff;
	font-size: 1.5rem;
	font-weight: 700;
	overflow: hidden;
	position: relative;
}
main .button a span {
	z-index: 2;
}
main .button a i {
	width: 2rem;
	height: 2rem;
	background: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 24 24"><path fill="%23ffffff" d="M16 2v7h-2v-5h-12v16h12v-5h2v7h-16v-20h16zm2 9v-4l6 5-6 5v-4h-10v-2h10z" /></svg>') no-repeat center center;
	z-index: 2;
}
main .links {
	display: flex;
	width: 100%;
}
main .links > div {
	margin: 3rem auto 0;
}
main .linkBtn {
	display: flex;
	align-items: center;
	position: relative;
	width: 100%;
	height: 100%;
	color: #004994;
	font-size: 1rem;
	font-weight: 700;
	line-height: 2;
}
main .linkBtn.-bg {
	color: #fff;
}
main .linkBtn:before {
	content: "";
	position: absolute;
	width: 100%;
	height: 3px;
	bottom: 0;
	margin: -0.25rem 0;
	background-color: #004994;
	z-index: 2;
}
main .linkBtn.-bg:before {
	background-color: #fff;
}
main .linkBtn b {
	z-index: 2;
}
main .linkBtn i {
	margin: 0 0 0 1rem;
	display: block;
	width: 1rem;
	height: 1rem;
	background: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 24 24"><path fill="%23004994" d="M5 3l3.057-3 11.943 12-11.943 12-3.057-3 9-9z" /></svg>') no-repeat center center;
	visibility: visible;
	z-index: 2;
}
main .linkBtn.-bg i {
	background: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 24 24"><path fill="%23FFFF" d="M5 3l3.057-3 11.943 12-11.943 12-3.057-3 9-9z" /></svg>') no-repeat center center;
}
main .linkBtn span {
	position: absolute;
	right: -2.5rem;
	width: 5rem;
	height: 5rem;
	border-radius: 50%;
	background-color: rgba(0, 73, 148, .1);
	transform: scale(1);
	transition: all 0.2s ease-in-out 0s;
	z-index: 1;
}
main .linkBtn.-bg span {
	background-color: #0097B8;
}
main .banner {
	margin: 0 auto;
	width: 100%;
	overflow: hidden;
}
main .banner .catch {
	margin: 0 auto 1.5rem;
	width: 80%;
	font-size: 1.5rem;
	line-height: 1.5;
	text-align: center;
	color: #002C59;
	position: relative;
	z-index: 2;
}
main .banner .catch::before {
	display: block;
	position: absolute;
	left: -3rem;
	bottom: 0;
	width: 3rem;
	height: 3rem;
	content: "";
	background-image: url("../images/cmn_slash_left.svg");
	background-position: left bottom;
	background-repeat: no-repeat;
	background-size: cover;
	z-index: 1;
}
main .banner .catch::after {
	display: block;
	position: absolute;
	right: -3rem;
	bottom: 0;
	width: 3rem;
	height: 3rem;
	content: "";
	background-image: url("../images/cmn_slash_right.svg");
	background-position: right bottom;
	background-repeat: no-repeat;
	background-size: cover;
	z-index: 1;
}
main .sns li {
	margin: 0 auto 1.5rem;
}
main .sns li:last-child {
	margin: 0 auto;
}
main .sns li a img {
	box-shadow: 0 0.25rem 1rem rgba(0, 0, 0, 0.1);
	border-radius: 1rem;
}
/*!--[ Home ]--*/
#home .columns-1 .detail p, #home .columns-2 .detail p {
	margin: 0 auto 1.5rem;
}
#home .columns-1 .pic.-md, #home .columns-2 .pic.-md {
	display: none;
}
#home .columns-3 {
	padding: 3rem 0 0;
}
#home .columns-3 .column {
	margin: 0 auto 6rem;
	padding: 4rem 1.5rem 1.5rem;
	width: 100%;
	border: 2px solid #E4EAF2;
	border-radius: 1rem;
	position: relative;
}
#home .columns-3 .column:last-of-type {
	margin: 0 auto 3rem;
}
#home .columns-3 .column .tit {
	position: absolute;
	top: -2.5rem;
	left: 50%;
	transform: translateX(-50%);
	z-index: 2;
	padding: 0 1.5rem;
	background: #fff;
}
#home .columns-3 .column .tit img {
	display: block;
	margin: 0 auto;
	height: 5rem;
	max-height: max-content;
	width: auto;
	max-width: max-content;
	border-radius: 0;
}
#home .columns-3 .column .pic {
	margin: 0 auto 1.5rem;
}
#home .columns-3 .column h3 {
	margin: 0 auto 1rem;
	color: #002C59;
	font-size: 1.5rem;
	font-weight: 700;
	line-height: 1.5;
	text-align: center;
}
#home .customers {
	margin: 0 auto 2rem;
	padding: 0;
	width: 100%;
	border-radius: 1rem;
	background: #FFF;
	box-shadow: 0 0 1rem 0 rgba(0, 0, 0, 0.5);
}
#home .customers article a {
	display: block;
	padding: 1.5rem;
	width: 100%;
	height: 100%;
}
#home .customers article h3 {
	display: flex;
	flex-direction: column;
	align-items: center;
}
#home .customers article h3.-sm {
	display: flex;
}
#home .customers article h3.-md {
	display: none;
}
#home .customers article h3 .cat-1 {
	display: block;
	margin: 0 auto 0.5rem;
	padding: 0 0 0.5rem;
	text-align: center;
	text-decoration-line: underline;
	text-decoration-color: #CCD2D9;
	text-decoration-thickness: 1px;
	text-underline-offset: 0.125rem;
}
#home .customers article h3 .cat-2 {
	display: block;
	margin: 0 auto 1.5rem;
	font-size: 1.25rem;
	color: #E69E2D;
	font-weight: 700;
	width: 100%;
	text-align: center;
}
#home .customers article .thumb {
	margin: 0 auto 3rem;
	width: 300px;
	height: 300px;
}
#home .customers article .thumb img {
	margin: 0 auto;
	width: 100%;
	max-width: 100%;
	height: 100%;
	border-radius: 100%;
	object-fit: cover;
}
#home .customers article .fukidashi {
	position: relative;
	width: 100%;
	background: #FFF;
	padding: 1.5rem;
	border: 0.5rem solid #E4EAF2;
	font-size: 1.25rem;
	font-weight: bold;
	border-radius: 1rem;
	color: #002C59;
}
#home .customers article .fukidashi::after, #home .customers article .fukidashi::before {
	border: solid transparent;
	content: '';
	height: 0;
	width: 0;
	pointer-events: none;
	position: absolute;
	bottom: 100%;
	left: 50%;
}
#home .customers article .fukidashi::after {
	border-color: transparent;
	border-top-width: 1rem;
	border-bottom-width: 1rem;
	border-left-width: 1rem;
	border-right-width: 1rem;
	margin-left: -1rem;
	border-bottom-color: #FFF;
}
#home .customers article .fukidashi::before {
	border-color: transparent;
	border-top-width: 1.5rem;
	border-bottom-width: 1.5rem;
	border-left-width: 1.5rem;
	border-right-width: 1.5rem;
	margin-left: -1.5rem;
	margin-bottom: 0.25rem;
	border-bottom-color: #E4EAF2;
}
#home .columns-4 .columns-4-body article {
	margin: 0 auto 3rem;
	padding: 0 0 3rem 0;
	border-bottom: 1px solid #CCD2D9;
}
#home .columns-4 .columns-4-body article:last-of-type {
	margin: 0 auto;
	border-bottom: 0 none;
}
#home .columns-4 .columns-4-body article h3 {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	margin: 0 auto 1.5rem;
	width: 100%;
}
#home .columns-4 .columns-4-body article h3 .cat-1 {
	margin: 0 1rem 0 0;
	padding: 0 1rem 0 0;
	border-right: 1px solid #CCD2D9;
}
#home .columns-4 .columns-4-body article h3 .cat-2 {
	font-size: 1.25rem;
	color: #E69E2D;
	font-weight: 700;
}
#home .columns-4 .columns-4-body article .wrap {
	margin: 0 auto 1.5rem;
}
#home .columns-4 .columns-4-body article .wrap .thumb {
	margin: 0 auto 1.5rem;
	width: 100%;
	position: relative;
}
#home .columns-4 .columns-4-body article .wrap .thumb::before {
	content: "";
	display: block;
	padding-top: 75%;
}
#home .columns-4 .columns-4-body article .wrap .thumb img {
	position: absolute;
	left: 0;
	top: 0;
	max-width: none;
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 1rem;
}
#home .columns-4 .columns-4-body article .wrap .result {
	display: flex;
	flex-direction: column;
}
#home .columns-4 .columns-4-body article .wrap .result h4 {
	margin: 0 auto 1rem;
	padding: 0.75rem;
	background: #0097B8;
	color: #fff;
	font-weight: 700;
	text-align: center;
}
#home .columns-4 .columns-4-body article .wrap .result .arrow {
	padding: 1.5rem 0;
	overflow: hidden;
	position: relative;
}
#home .columns-4 .columns-4-body article .wrap .result .arrow::before {
	position: absolute;
	top: calc(50% - 1px);
	left: 50%;
	transform: translateX(-50%);
	width: 100%;
	height: 2px;
	content: '';
	background: #E4EAF2;
}
#home .columns-4 .columns-4-body article .wrap .result .arrow i {
	margin: 0 auto;
	display: block;
	width: 60px;
	height: 60px;
	background-color: #fff;
	background-image: url("../images/cmn_icon_arrow.svg");
	background-position: center;
	background-repeat: no-repeat;
	transform: rotate(90deg);
	position: relative;
	z-index: 2;
}
#home .columns-4 .columns-4-body article p.link {
	font-size: 1.25rem;
	text-align: center;
}
#home .columns-4 .columns-4-body article p.link a {
	color: #004994;
	text-decoration-color: #004994;
}
#home .blogs article {
	margin: 0 auto 3rem;
	background: #fff;
	box-shadow: 0 0.25rem 1rem rgba(0, 0, 0, 0.1);
	border-radius: 1rem;
	position: relative;
}
#home .blogs article .thumb {
	margin: 0 auto;
	width: 100%;
	position: relative;
}
#home .blogs article .thumb::before {
	content: "";
	display: block;
	padding-top: 75%;
}
#home .blogs article .thumb img {
	position: absolute;
	left: 0;
	top: 0;
	max-width: none;
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 1rem 1rem 0 0;
}
#home .blogs article .detail {
	position: relative;
	padding: 3rem 1.5rem 1.5rem;
}
#home .blogs article .detail .cat {
	position: absolute;
	left: 1.5rem;
	top: -1.5rem;
	padding: 0.75rem;
	background: #0097B8;
	color: #fff;
	font-weight: 700;
	text-align: center;
}
#home .blogs article .detail .date {
	display: block;
	margin: 0 0 0.5rem;
	color: #f4a116;
}
#home .blogs article .detail h3 {
	margin: 0 auto 1rem;
	color: #002C59;
	font-size: 1.25rem;
	font-weight: 700;
	line-height: 1.5;
}
#home .blogs article .detail h4 {
	margin: 0 auto 1.5rem;
	line-height: 1.5;
}
#home .blogs article .detail p.link {
	font-size: 1.25rem;
	text-align: center;
}
#home .blogs article .detail p.link a {
	color: #004994;
	text-decoration-color: #004994;
}
#home .access:not(:first-of-type), #cmn .access:not(:first-of-type) {
	margin: 0 auto 5rem;
}
#home .access h2, #cmn .access h2 {
	margin: 0 auto 1.5rem;
	font-size: 2rem;
	font-weight: 700;
	line-height: 1.5;
	color: #0f1e2d;
}
#home .access .wrap, #cmn .access .wrap {
	margin: 0 auto 1.5rem;
}
#home .access .wrap .pic, #cmn .access .wrap .pic {
	margin: 0 auto;
	width: 100%;
	overflow: hidden;
	position: relative;
}
#home .access .wrap .pic .img, #cmn .access .wrap .pic .img {
	position: relative;
	padding-top: 100%;
	height: 100%;
	text-indent: -987654px;
	line-height: 0;
	background-position: center bottom;
	background-repeat: no-repeat;
	background-size: cover;
}
#home .access .wrap .pic .img.-osaka, .webp .access .wrap .pic .img.-osaka {
	background-image: url("../images/cmn_access_pic_01.jpg");
}
.webp #home .access .wrap .pic .img.-osaka, .webp #cmn .access .wrap .pic .img.-osaka {
	background-image: url("../images/cmn_access_pic_01.webp");
}
.avif #home .access .wrap .pic .img.-osaka, .avif #cmn .access .wrap .pic .img.-osaka {
	background-image: url("../images/cmn_access_pic_01.avif");
}
#home .access .wrap .pic .img.-tokyo, .webp .access .wrap .pic .img.-tokyo {
	background-image: url("../images/cmn_access_pic_02.jpg");
}
.webp #home .access .wrap .pic .img.-tokyo, .webp #cmn .access .wrap .pic .img.-tokyo {
	background-image: url("../images/cmn_access_pic_02.webp");
}
.avif #home .access .wrap .pic .img.-tokyo, .avif #cmn .access .wrap .pic .img.-tokyo {
	background-image: url("../images/cmn_access_pic_02.avif");
}
#home .access .wrap .map, #cmn .access .wrap .map {
	width: 100%;
}
#home .access .wrap .map .gmap, #cmn .access .wrap .map .gmap {
	position: relative;
	padding-top: 100%;
	height: 0;
}
#home .access .wrap .map .gmap iframe, #home .access .wrap .map .gmap object, #home .access .wrap .map .gmap embed, #cmn .access .wrap .map .gmap iframe, #cmn .access .wrap .map .gmap object, #cmn .access .wrap .map .gmap embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
#home .access .address, #cmn .access .address {
	margin: 0 auto 1.5rem;
	padding: 1rem;
	border: 4px solid #004994;
	background: #fff;
	width: 100%;
	font-size: 1rem;
	font-weight: 700;
	line-height: 1.5;
}
#home .access .address span, #cmn .access .address span {
	display: block;
}
#home .access .data h3, #cmn .access .data h3 {
	margin: 0 auto 1.5rem;
	padding: 0.75rem;
	color: #fff;
	font-weight: 700;
	text-align: center;
	background: #0097B8;
}
#home .access .data .train, #cmn .access .data .train {
	margin: 0 auto 1.5rem;
}
#home .access .data dl, #cmn .access .data dl {
	margin: 1rem 0 0;
	padding: 1rem 0 0;
	border-top: 1px solid #E4EAF2;
}
#home .access .data dl:first-of-type, #cmn .access .data dl:first-of-type {
	padding: 0;
	border-top: 0 none;
}
#home .access .data dl dt, #cmn .access .data dl dt {
	margin: 0 0 .75rem;
	font-weight: 700;
	color: #0F1E2D;
	line-height: 2;
}
#home .access .data dl dd, #cmn .access .data dl dd {
	line-height: 2;
	text-align: justify;
}
#home .access .data p, #cmn .access .data p {
	margin: 1rem 0 0;
	padding: 1rem 0 0;
	border-top: 1px solid #E4EAF2;
	text-align: justify;
}
#cmn .columns-1 .detail p, #cmn .columns-2 .detail p {
	margin: 0 auto 1.5rem;
}
#cmn .columns-1 .pic.-md, #cmn .columns-2 .pic.-md {
	display: none;
}
#wrapper {
	display: flex;
	flex-direction: column-reverse;
	margin: 0 auto;
	width: 100%;
}
#sidebar {
	padding: 3rem 1.5rem;
	width: 100%;
}
#sidebar .title {
	display: none;
}
#sidebar .index {
	display: flex;
	margin: 0 auto 1rem;
	color: #0097B8;
	font-weight: 700;
	position: relative;
}
#sidebar .index span {
	padding: 0 1rem 0 0;
	background: #fff;
	z-index: 2;
}
#sidebar .index::after {
	display: block;
	content: "";
	width: 100%;
	height: 1px;
	background: #0097B8;
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
}
#sidebar form {
	margin: 0 auto;
	width: 100%;
}
#sidebar form select {
	width: 100%;
	padding: 0.5rem;
	background: #fff;
	cursor: pointer;
	border: 2px solid #E4EAF2;
	-webkit-appearance: none;
	appearance: none;
}
#sidebar form select {
	background: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 24 24"><path fill="%230097B8" d="M0 7.33l2.829-2.83 9.175 9.339 9.167-9.339 2.829 2.83-11.996 12.17z" /></svg>') no-repeat right 0.5rem center;
	background-size: 1rem 1rem;
}
#sidebar ul {
	display: none;
}
#primary section .inner {
	padding: 6rem 1.5rem;
	width: 100%;
}
#primary section:nth-of-type(odd) {
	background: #F5F9FA;
}
#primary .pic, #primary .txt {
	margin: 0 auto 1.5rem;
}
#primary .pic-2, #primary .txt-2 {
	margin: 0 auto 3rem;
}
#primary .pic img, #primary .pic-2 img {
	border-radius: 1rem;
}
#primary .title-1 {
	margin: 0 auto 0.75rem;
	color: #002C59;
	font-size: 1.25rem;
	font-weight: 700;
}
#primary .title-2 {
	margin: 0 auto 1.5rem;
	color: #002C59;
	font-size: 1.25rem;
	font-weight: 400;
}
#primary .title-3 {
	margin: 0 auto 2rem;
	color: #002C59;
	font-size: 1.25rem;
	font-weight: 400;
	text-align: center;
}
#primary .title-1.-c, #primary .title-2.-c {
	text-align: center;
}
#primary .title-1.-fcw, #primary .title-2.-fcw, #primary .title-3.-fcw {
	color: #fff;
}
#primary .title-2 span {
	margin: 0 0 0 0.25rem;
	font-size: 0.875rem;
}
/*!--[ Contents / about ]--*/
#primary .about_columns dl {
	margin: 0 auto;
	padding: 1.5rem;
	background: #F5F9FA;
	border-radius: 1rem;
}
#primary .about_columns dl dt {
	margin: 0 auto 1rem;
	color: #0F1E2D;
	font-weight: 700;
}
#primary .about_columns dl dd {
	line-height: 2;
}
#primary .about_columns-2 .column {
	margin: 0 auto 3rem;
}
#primary .about_columns-2 .column .detail i {
	display: block;
	margin: 0 auto 1.5rem;
	width: 10rem;
	height: 10rem;
}
#primary .about_columns-2 .column .detail i.wheelchair {
	background: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 24 24"><path fill="%230097B8" d="M7 9.866v2.392c-1.221 1.009-2 2.535-2 4.242 0 3.035 2.464 5.5 5.5 5.5 2.256 0 4.197-1.362 5.045-3.308l1.248 1.887c-1.338 2.058-3.658 3.421-6.293 3.421-4.14 0-7.5-3.361-7.5-7.5 0-2.876 1.622-5.376 4-6.634zm10 .134c.552 0 1 .448 1 1s-.448 1-1 1c-1.185 0-3.224.005-4 0 0 2.62 3.641.927 5.274 3.443.726 1.119 1.953 2.998 2.59 4.091.088.151.132.303.136.466.007.352-.174.711-.502.9-.23.132-.933.287-1.366-.366-.67-1.011-1.45-2.211-1.996-3.025-.782-1.166-1.308-1.459-4.136-1.509-2.039-.036-4-.43-4-3v-4c0-.531.21-1.039.586-1.414.375-.376.883-.586 1.414-.586.53 0 1.039.21 1.414.586.375.375.586.883.586 1.414v1h4zm-6-10c1.656 0 3 1.344 3 3s-1.344 3-3 3-3-1.344-3-3 1.344-3 3-3z" /></svg>') no-repeat center top;
}
#primary .about_columns-2 .column .detail i.hand {
	background: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 24 24"><path fill="%230097B8" d="M11.75 3.092v8.538c0 .383.688.391.688 0v-7.17c0-1.357 2.395-1.399 2.395 0v8.125c0 .5.491.573.676.197.176-.361.908-1.974.917-1.991.735-1.541 3.193-.605 2.429 1.209-.19.492-2.544 5.832-3.144 7.179-.629 1.411-1.857 2.821-4.126 2.821h-3.94c-2.388 0-3.645-1.417-3.645-3.895v-10.812c0-1.434 1.976-1.362 1.976-.066v4.741c0 .391.715.389.715 0v-7.618c0-1.475 2.208-1.435 2.208 0v7.192c0 .397.664.378.664-.008v-8.442c0-1.435 2.187-1.477 2.187 0zm-1.081-3.092c-1.055 0-1.972.499-2.53 1.277-1.833-.2-3.391 1.146-3.446 2.972-1.554.143-2.693 1.403-2.693 3.044v10.812c0 3.636 2.163 5.895 5.645 5.895h3.94c2.686 0 4.8-1.423 5.953-4.006.437-.981 2.873-6.496 3.17-7.24.464-1.119.373-2.297-.25-3.236-.761-1.146-2.233-1.75-3.624-1.41v-3.649c0-1.914-1.646-3.203-3.53-3.017-.532-.879-1.492-1.442-2.635-1.442z" /></svg>') no-repeat center top;
}
#primary .about_columns-3 {
	margin: 0 auto;
	padding: 5rem 1.5rem;
	color: #fff;
	background-color: #004994;
	background-image: url("../images/bg_cmn_2.jpg");
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	border-radius: 1rem;
}
.webp #primary .about_columns-3 {
	background-image: url("../images/bg_cmn_2.webp");
}
.avif #primary .about_columns-3 {
	background-image: url("../images/bg_cmn_2.avif");
}
#primary .about_columns-3 .title-3 {
	font-weight: 700;
	text-align: center;
}
#primary .about_columns-3 .logomark {
	margin: 0 auto 2rem;
	width: 25%;
}
table.comparison {
	margin: 0 auto 3rem;
	display: block;
	overflow-x: scroll;
	border: 1px solid #CCD2D9;
	white-space: nowrap;
}
table.comparison .fixed {
	position: sticky;
	left: 0;
	text-align: center;
}
table.comparison th, table.comparison td {
	padding: 0.75rem;
	border: 1px solid #CCD2D9;
	width: 25%;
	font-size: 0.875rem;
	line-height: 2;
	vertical-align: middle;
}
table.comparison th {
	background: #fff;
}
table.comparison .reha {
	background: #F1DB2B;
	color: #002C59;
	font-weight: 700;
}
table.comparison .head {
	background: #F5F9FA;
}
#primary .logo-satis {
	margin: 0 auto 1.5rem;
	width: 100%;
	max-width: 300px;
}
#primary .logo-satis img {
	border-radius: 0;
}
#primary .machine-columns .column {
	margin: 0 auto 1.5rem;
}
#primary .warn {
	color: red;
	font-weight: bold;
	font-size: 0.875rem;
}
#primary .logo-nlc {
	margin: 0 auto;
	padding: 3rem 0;
	width: 100%;
}
#primary .logo-nlc img {
	border-radius: 0;
}
#primary .recommendation .columns {
	margin: 0 auto 3rem;
}
#primary .recommendation .columns:nth-of-type(2) {
	margin: 0 auto;
}
#primary .recommendation .columns .column .doctor-pic {
	margin: 0 auto 1.5rem;
}
#primary .recommendation .columns .column .doctor-detail {
	margin: 0 auto 1.5rem;
}
#primary .recommendation .columns .column .doctor-detail h3 {
	margin: 0 auto 1.5rem;
	padding: 0 0 1.5rem;
	border-bottom: 1px solid #CCD2D9;
	color: #002C59;
	text-align: center;
	line-height: 1.5;
}
#primary .recommendation .columns .column .doctor-detail h3 span {
	display: block;
	margin: 0 auto 0.5rem;
	font-size: 0.875rem;
	line-height: 1.5;
}
#primary .recommendation .columns .column .doctor-detail h3 b {
	font-size: 1.25rem;
	font-weight: 700;
	letter-spacing: 2;
	line-height: 1.5;
}
#primary .recommendation .columns .column .doctor-detail h4 {
	margin: 0 auto 1rem;
	color: #0F1E2D;
	font-weight: 700;
}
#primary .recommendation .columns .column .doctor-profile {
	margin: 0 auto;
	padding: 1.5rem;
	background: #F5F9FA;
	border-radius: 1rem;
	width: 100%;
}
#primary .recommendation .columns .column .doctor-profile .affiliation {
	margin: 0 auto 1.5rem;
	padding: 0 0 1.5rem;
	border-bottom: 1px solid #CCD2D9;
}
#primary .recommendation .columns .column .doctor-profile .affiliation dt, #primary .recommendation .columns .column .doctor-profile .bio dt {
	margin: 0 auto 1rem;
	color: #0F1E2D;
	font-weight: 700;
}
#primary .recommendation .columns .column .doctor-profile dd ul {
	display: flex;
	flex-wrap: wrap;
	list-style: disc;
}
#primary .recommendation .columns .column .doctor-profile dd ul li {
	margin: 0 0 0.75rem 1.5rem;
	width: calc(50% - 1.5rem);
	list-style: disc;
}
#primary .recommendation .columns .column .doctor-profile dd ul li:last-child {
	margin: 0 0 0 1.5rem;
}
#primary .recommendation .columns .column .doctor-profile .bio dd {
	line-height: 2;
}
#cmn .fee {
	margin: 0 auto;
}
#cmn .columns-1 .detail .fee p.txt, #cmn .columns-2 .detail .fee p.txt {
	margin: 0 auto 3rem;
}
#cmn .fee .catch {
	margin: 0 auto 1.5rem;
	width: 80%;
	font-size: 1.5rem;
	line-height: 1.5;
	text-align: center;
	color: #002C59;
	position: relative;
	z-index: 2;
}
#cmn .fee .catch::before {
	display: block;
	position: absolute;
	left: -1.5rem;
	bottom: 0;
	width: 2rem;
	height: 2rem;
	content: "";
	background-image: url("../images/cmn_slash_left.svg");
	background-position: left bottom;
	background-repeat: no-repeat;
	background-size: cover;
	z-index: 1;
}
#cmn .fee .catch::after {
	display: block;
	position: absolute;
	right: -1.5rem;
	bottom: 0;
	width: 2rem;
	height: 2rem;
	content: "";
	background-image: url("../images/cmn_slash_right.svg");
	background-position: right bottom;
	background-repeat: no-repeat;
	background-size: cover;
	z-index: 1;
}
#cmn .fee_columns {
	margin: 0 auto 1.5rem;
	border: 2px solid #004994;
	background: #004994;
}
#cmn .fee_columns dt {
	margin: 0 auto;
	padding: 0.75rem;
	border: 2px solid #004994;
	width: 100%;
	color: #fff;
	font-size: 1.25rem;
	font-weight: 700;
	text-align: center;
	line-height: 1;
}
#cmn .fee_columns dd {
	margin: 0 auto;
	padding: 1rem;
	border: 2px solid #004994;
	width: 100%;
	background: #FFF;
	color: #002C59;
	font-size: 1rem;
	font-weight: 700;
	text-align: center;
	line-height: 1;
}
#cmn .fee_columns dd b {
	margin: 0 auto 0.25rem;
	color: #E69E2D;
	font-size: 2rem;
}
#primary .merit_columns {
	margin: 0 auto 3rem;
}
#primary .merit_columns:last-of-type {
	margin: 0 auto;
}
#primary .merit_columns h3 {
	margin: 0 auto;
	display: flex;
	flex-direction: column;
	justify-content: center;
	flex-wrap: wrap;
	width: 100%;
}
#primary .merit_columns h3 span {
	display: block;
	margin: 0 auto 1.5rem;
	width: 120px;
}
#primary .merit_columns h3 span img {
	border-radius: 0;
}
#primary .merit_columns h3 b {
	display: block;
	margin: 0 auto 1.5rem;
	font-size: 1.5rem;
	line-height: 1.5;
	color: #002C59;
}
#primary .merit_columns .detail .pic {
	margin: 0 auto 1.5rem;
	width: 100%;
}
#primary .merit_columns .detail .txt {
	margin: 0;
	width: 100%;
}
#primary .flow_columns .step {
	display: block;
	margin: 0 auto 1.5rem;
	width: 120px;
}
#primary .flow_columns .step img {
	border-radius: 0;
}
#primary .flow_columns .detail h3 {
	display: block;
	margin: 0 auto 1.5rem;
	font-size: 1.5rem;
	line-height: 1.5;
	color: #002C59;
	text-align: center;
}
#primary .flow_columns .detail .flow_button li {
	margin: 0 auto 1.5rem;
	width: 100%;
}
#primary .flow_columns .detail .flow_button li a {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 0.75rem 1.5rem;
	border: 4px solid #E69E2D;
	border-radius: 1rem;
	width: 100%;
	color: #FFF;
	font-weight: 700;
	background: #E69E2D;
	overflow: hidden;
	position: relative;
	z-index: 1;
}
#primary .flow_columns .detail .flow_button li a::after {
	position: absolute;
	top: 0;
	left: 0;
	background: #FFF;
	content: '';
	width: 100%;
	height: 100%;
	transform: scale(0, 1);
	transform-origin: left top;
	transition: .25s cubic-bezier(0.45, 0, 0.55, 1);
	z-index: -1;
}
#primary .flow_columns .detail .flow_button li a > i {
	margin: 0;
	display: block;
	width: 20px;
	height: 20px;
	background: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 24 24"><path fill="%23FFFFFF" d="M7.33 24l-2.83-2.829 9.339-9.175-9.339-9.167 2.83-2.829 12.17 11.996z" /></svg>') no-repeat center center;
}
#primary .flow_columns .flow_arrow {
	margin: 0 auto 3rem;
	padding: 1.5rem 0;
	width: 100%;
	overflow: hidden;
	position: relative;
}
#primary .flow_columns .flow_arrow::before {
	position: absolute;
	top: calc(50% - 1px);
	left: 50%;
	transform: translateX(-50%);
	width: 100%;
	height: 2px;
	content: '';
	background: #E4EAF2;
}
#primary .flow_columns .flow_arrow i {
	margin: 0 auto;
	display: block;
	width: 60px;
	height: 60px;
	background-color: #FFF;
	background-image: url("../images/cmn_icon_arrow.svg");
	background-position: center;
	background-repeat: no-repeat;
	transform: rotate(90deg);
	position: relative;
	z-index: 2;
}
#primary section:nth-of-type(odd) .flow_columns .flow_arrow i {
	background-color: #F5F9FA;
}
#primary .program_link ul {
	margin: 0 auto;
	width: 100%;
}
#primary .program_link ul li {
	margin: 0 auto 3rem;
	width: 100%;
	position: relative;
}
#primary .program_link ul li:last-of-type {
	margin: 0 auto;
}
#primary .program_link ul li a {
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	bottom: 1.5rem;
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 1rem 1.5rem;
	border: 4px solid #002C59;
	border-radius: 1rem;
	width: 80%;
	color: #002C59;
	font-weight: 700;
	background: #FFF;
	overflow: hidden;
	z-index: 2;
}
#primary .program_link ul li a::after {
	position: absolute;
	top: 0;
	left: 0;
	background: #002C59;
	content: '';
	width: 100%;
	height: 100%;
	transform: scale(0, 1);
	transform-origin: left top;
	transition: .25s cubic-bezier(0.45, 0, 0.55, 1);
	z-index: -1;
}
#primary .program_link ul li a > i {
	margin: 0;
	display: block;
	width: 20px;
	height: 20px;
	background: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 24 24"><path fill="%23002C59" d="M7.33 24l-2.83-2.829 9.339-9.175-9.339-9.167 2.83-2.829 12.17 11.996z" /></svg>') no-repeat center center;
}
#primary .schedule {
	margin: 0 auto 3rem;
}
#primary .schedule li .detail {
	margin: 0 auto 3rem;
}
#primary .schedule li .detail h3 {
	margin: 0 auto 3rem;
	padding: 0.75rem;
	background: #0097B8;
	color: #fff;
	font-weight: 700;
	text-align: center;
}
#primary .schedule li .detail h4 {
	margin: 0 auto 1.5rem;
	padding: 0 0 0.5rem;
	border-bottom: 1px solid #CCD2D9;
	font-size: 1.125rem;
	font-weight: 700;
}
#primary .schedule li .detail dl {
	margin: 0 auto 1.5rem;
}
#primary .schedule li .detail dl dt {
	margin: 0 auto 0.75rem;
	font-weight: 700;
}
#primary .schedule li .detail dl dt::before {
	margin: 0 0.5rem 0 0;
	content: "・";
}
#primary .schedule li .detail dl dd {
	margin: 0 0 0 1rem;
	line-height: 2;
}
#primary .schedule li .detail dl:last-of-type {
	margin: 0 auto;
}
#primary .schedule li .arrow {
	margin: 0 auto 1.5rem;
	padding: 1.5rem 0;
	width: 100%;
}
#primary .schedule li .arrow i {
	margin: 0 auto;
	display: block;
	width: 60px;
	height: 60px;
	background-color: #FFF;
	background-image: url("../images/cmn_icon_arrow.svg");
	background-position: center;
	background-repeat: no-repeat;
	transform: rotate(90deg);
}
#primary .schedule_txt {
	margin: 0 auto;
	padding: 1.5rem;
	border-radius: 1rem;
	font-weight: 700;
	line-height: 2;
	color: #0F1E2D;
	background: #FCF1DF;
	text-align: center;
}
#cmn .faq_txt {
	margin: 0 auto 1.5rem;
}
#cmn .faq_navi {
	margin: 0 auto;
	padding: 1rem;
	border: 4px solid #E4EAF2;
	background: #fff;
	width: 100%;
}
#cmn .faq_navi ul li {
	margin: 0 auto 1rem;
	padding: 0 0 1rem;
	border-bottom: 1px dashed #CCD2D9;
	width: 100%;
}
#cmn .faq_navi ul li a {
	display: flex;
	align-items: center;
	margin: 0 auto;
	font-weight: 700;
	color: #004994;
}
#cmn .faq_navi ul li a i {
	display: block;
	margin: 0 0.5rem 0 0;
	width: 1.25rem;
	height: 1.25rem;
	content: "";
	background: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 24 24"><path fill="%23004994" d="m12.012 1.995c-5.518 0-9.998 4.48-9.998 9.998s4.48 9.998 9.998 9.998 9.997-4.48 9.997-9.998-4.479-9.998-9.997-9.998zm0 1.5c4.69 0 8.497 3.808 8.497 8.498s-3.807 8.498-8.497 8.498-8.498-3.808-8.498-8.498 3.808-8.498 8.498-8.498zm1.528 4.715s1.502 1.505 3.255 3.259c.146.147.219.339.219.531s-.073.383-.219.53c-1.753 1.754-3.254 3.258-3.254 3.258-.145.145-.336.217-.527.217-.191-.001-.383-.074-.53-.221-.293-.293-.295-.766-.004-1.057l1.978-1.977h-6.694c-.414 0-.75-.336-.75-.75s.336-.75.75-.75h6.694l-1.979-1.979c-.289-.289-.286-.762.006-1.054.147-.147.339-.221.531-.222.19 0 .38.071.524.215z" /></svg>') no-repeat center center;
}
#cmn .faq_navi ul li:last-of-type {
	margin: 0 auto;
	padding: 0;
	border-bottom: 0 none;
}
#cmn .faq_navi {
	margin: 0 auto 5rem;
}
#cmn .faq_wrap {
	margin: 0 auto 5rem;
}
#cmn .faq_wrap:last-of-type {
	margin: 0 auto;
}
#cmn .faq_wrap h3 {
	margin: 0 auto 3rem;
	font-size: 1.5rem;
	font-weight: 700;
	color: #002C59;
}
#cmn .faq_wrap .detail ul {
	margin: 0 auto;
	width: 100%;
}
#cmn .faq_wrap .detail ul li {
	margin: 0 auto 2rem;
	padding: 0 0 2rem 0;
	border-bottom: 1px dashed #E4EAF2;
	width: 100%;
}
#cmn .faq_wrap .detail ul li:last-of-type {
	margin: 0 auto;
	padding: 0;
	border-bottom: 0 none;
}
#cmn .faq_wrap .detail ul li dl {
	display: flex;
	width: 100%;
}
#cmn .faq_wrap .detail ul li .answer {
	display: none;
}
#cmn .faq_wrap .detail ul li dl dt {
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0;
	padding: 1rem 0;
	font-size: 1.5rem;
	font-weight: 700;
	line-height: 1;
	width: 20%;
}
#cmn .faq_wrap .detail ul li dl dd {
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
	margin: 0;
	width: calc(100% - 20% - 1px);
	padding: 1rem 0 1rem 1rem;
}
#cmn .faq_wrap .detail ul li > a {
	display: block;
	margin: 0 auto;
	width: 100%;
	height: 100%;
	line-height: 1;
	color: #2a2a2a;
	position: relative;
}
#cmn .faq_wrap .detail ul li a dl dd span::before, #cmn .faq_wrap .detail ul li a dl dd span::after {
	content: '';
	display: block;
	width: 1rem;
	height: 1px;
	position: absolute;
	right: 1rem;
	top: 50%;
	transform: translateY(-50%);
}
#cmn .faq_wrap .detail ul li a dl dd span::after {
	background: #2a2a2a;
	transform: translateY(-50%);
	transition: 0.1s;
}
#cmn .faq_wrap .detail ul li a dl dd span:nth-of-type(1)::after {
	transform: rotate(90deg);
}
#cmn .faq_wrap .detail ul li a.active dl dd span:nth-of-type(1)::after {
	transform: rotate(0deg);
	transition: 0.1s;
}
#cmn .faq_wrap .detail ul li a dl.faq-q dt {
	border-right: 1px solid #0097b8;
	color: #0097b8;
}
#cmn .faq_wrap .detail ul li dl.faq-a dt {
	border-right: 1px solid #e69e2d;
	color: #e69e2d;
}
#cmn .faq_wrap .detail ul li a dl.faq-q dd {
	padding: 1rem 3rem 1rem 1rem;
	font-weight: 700;
}
#cmn .faq_wrap .detail ul li dl.faq-a dd {
	display: block;
}
#cmn .faq_wrap .detail ul li dl.faq-a dd .faq_links {
	display: flex;
	justify-content: flex-start;
	margin: 0;
	overflow: hidden;
}
#cmn .faq_wrap .detail ul li dl.faq-a dd .faq_links span {
	font-size: 0.75rem;
}
#cmn .faq_wrap .detail ul li dl.faq-a dd a {
	display: flex;
	align-items: center;
	margin: 0 0 1rem;
	color: #E69E2D;
	font-weight: 700;
	line-height: 2;
	position: relative;
	z-index: 2;
}
#cmn .faq_wrap .detail ul li dl.faq-a dd a::before {
	background: #E69E2D;
	content: '';
	width: 100%;
	height: 1px;
	position: absolute;
	left: 0;
	bottom: -2px;
	margin: auto;
	transform-origin: right top;
	transform: scale(0, 1);
	transition: transform .25s;
}
#cmn .faq_wrap .detail ul li dl.faq-a dd a i {
	display: block;
	margin: 0 0.5rem 0 0;
	width: 1.25rem;
	height: 1.25rem;
	content: "";
	background: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 24 24"><path fill="%23E69E2D" d="m12.012 1.995c-5.518 0-9.998 4.48-9.998 9.998s4.48 9.998 9.998 9.998 9.997-4.48 9.997-9.998-4.479-9.998-9.997-9.998zm0 1.5c4.69 0 8.497 3.808 8.497 8.498s-3.807 8.498-8.497 8.498-8.498-3.808-8.498-8.498 3.808-8.498 8.498-8.498zm1.528 4.715s1.502 1.505 3.255 3.259c.146.147.219.339.219.531s-.073.383-.219.53c-1.753 1.754-3.254 3.258-3.254 3.258-.145.145-.336.217-.527.217-.191-.001-.383-.074-.53-.221-.293-.293-.295-.766-.004-1.057l1.978-1.977h-6.694c-.414 0-.75-.336-.75-.75s.336-.75.75-.75h6.694l-1.979-1.979c-.289-.289-.286-.762.006-1.054.147-.147.339-.221.531-.222.19 0 .38.071.524.215z" /></svg>') no-repeat center center;
}
#cmn .cmn_list {
	list-style: disc;
}
#cmn .cmn_list li {
	margin: 0 0 0.75rem 1.5rem;
	list-style: disc;
	line-height: 2;
}
#cmn .privacy_columns {
	margin: 0 auto 5rem;
}
#cmn .privacy_columns:last-of-type {
	margin: 0 auto;
}
#cmn .privacy_columns h3 {
	margin: 0 auto 1.5rem;
	font-size: 1.5rem;
	font-weight: 700;
	color: #002C59;
}
#cmn .privacy_columns .detail {
	margin: 0 auto;
	width: 100%;
	padding: 1.5rem;
	border-radius: 1rem;
	font-weight: 700;
	line-height: 2;
	color: #0F1E2D;
	background: #FCF1DF;
}
#cmn .sitemap {
	margin: 0 auto 5rem;
}
#cmn .sitemap:last-of-type {
	margin: 0 auto;
}
#cmn .sitemap h3 {
	margin: 0 auto 1.5rem;
	font-size: 1.5rem;
	font-weight: 700;
	color: #002C59;
}
#cmn .sitemap ul {
	margin: 0 auto;
	width: 100%;
}
#cmn .sitemap ul li {
	margin: 0 auto 1.5rem;
	width: 100%;
}
#cmn .sitemap ul li:last-of-type {
	margin: 0 auto;
}
#cmn .sitemap ul li a {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin: 0;
	padding: 1rem 1.5rem;
	border: 4px solid #002C59;
	border-radius: 1rem;
	width: 100%;
	color: #002C59;
	font-weight: 700;
	background: #FFF;
	overflow: hidden;
	z-index: 2;
}
#cmn .sitemap ul li a > i {
	margin: 0;
	display: block;
	width: 20px;
	height: 20px;
	background: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 24 24"><path fill="%23002C59" d="M7.33 24l-2.83-2.829 9.339-9.175-9.339-9.167 2.83-2.829 12.17 11.996z" /></svg>') no-repeat center center;
}
#archives {
	margin: 0 auto;
	width: 100%;
}
#archives .archives_columns {
	margin: 0 auto 5rem;
	width: 100%;
}
#archives .archives_category {
	margin: 0 auto;
	width: 100%;
}
#archives .archives_category dl {
	margin: 0 auto 1.5rem;
	width: 100%;
	border: 4px solid #E4EAF2;
	border-radius: 1rem 1rem 0 0;
}
#archives .archives_category dl:last-of-type {
	margin: 0 auto;
}
#archives .archives_category dl dt {
	margin: 0 auto;
	padding: 1rem;
	width: 100%;
	border-bottom: 4px solid #E4EAF2;
	color: #002C59;
	font-weight: 700;
	font-size: 1.5rem;
	text-align: center;
	background: #F5F9FA;
	border-radius: 1rem 1rem 0 0;
}
#archives .archives_category dl dd {
	margin: 0 auto;
	padding: 2rem;
	width: 100%;
	background: #FFF;
}
#archives .archives_category dl dd ul {
	display: block;
	list-style: none;
}
#archives .archives_category dl dd ul li {
	margin: 0 0 1.5rem 0;
	padding: 0 0 0 1.5rem;
	background-image: url("../images/cmn_ico_circle.svg");
	background-repeat: no-repeat;
	background-position: left center;
	background-size: 1rem 1rem;
}
#archives .archives_category dl dd ul li:last-child {
	margin: 0;
}
#archives .archives_category dl dd ul li a {
	position: relative;
	color: #004994;
	text-decoration-line: underline;
	text-decoration-color: #004994;
	text-decoration-thickness: 1px;
	text-underline-offset: 0.125rem;
}
#archives .archives_columns article {
	margin: 0 auto 3rem;
	background: #fff;
	box-shadow: 0 0.25rem 1rem rgba(0, 0, 0, 0.1);
	border-radius: 1rem;
	position: relative;
}
#archives .archives_columns article .thumb {
	margin: 0 auto;
	width: 100%;
	position: relative;
}
#archives .archives_columns article .thumb::before {
	content: "";
	display: block;
	padding-top: 75%;
}
#archives .archives_columns article .thumb img {
	position: absolute;
	left: 0;
	top: 0;
	max-width: none;
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 1rem 1rem 0 0;
}
#archives .archives_columns article .detail {
	position: relative;
	padding: 3rem 1.5rem 1.5rem;
}
#archives .archives_columns article .detail .cat {
	position: absolute;
	left: 1.5rem;
	top: -1.5rem;
	padding: 0.75rem;
	background: #0097B8;
	color: #fff;
	font-weight: 700;
	text-align: center;
}
#archives .archives_columns article .detail .date {
	display: block;
	margin: 0 0 0.5rem;
	color: #f4a116;
}
#archives .archives_columns article .detail h3 {
	margin: 0 auto 1rem;
	color: #002C59;
	font-size: 1.25rem;
	font-weight: 700;
	line-height: 1.5;
}
#archives .archives_columns article .detail h4 {
	margin: 0 auto 1.5rem;
	line-height: 1.5;
}
#archives .archives_columns article .detail p.link {
	font-size: 1.25rem;
	text-align: center;
}
#archives .archives_columns article .detail p.link a {
	color: #004994;
	text-decoration-color: #004994;
}
.wp-pagenavi {
	margin: 5rem auto 0;
	width: 100%;
	border: solid 1px #E4EAF2;
}
.wp-pagenavi a, .wp-pagenavi span {
	display: block;
	margin: 0 auto;
	padding: 1.5rem 1rem;
	border: solid 1px #E4EAF2;
	width: 100%;
	text-align: center;
}
.wp-pagenavi span.current {
	color: #fff;
	background-color: #0097B8;
	border-color: #0097B8;
	font-weight: 700;
}
.wp-pagenavi span.pages {
	color: #fff;
	background-color: #6F767D;
	border-color: #6F767D;
	font-weight: 700;
}
#post {
	margin: 0 auto;
	padding: 6rem 1.5rem;
	width: 100%;
}
#post-primary {
	margin: 0 auto 5rem;
	width: 100%;
}
#post-sidebar {
	margin: 0 auto;
	width: 100%;
}
#post-primary section {
	margin: 0 auto 5rem;
}
#post-primary section:last-of-type {
	margin: 0 auto;
}
#post-primary .customer_columns .thumb {
	margin: 0 auto 1.5rem;
	width: 100%;
	position: relative;
}
#post-primary .customer_columns .thumb::before {
	content: "";
	display: block;
	padding-top: 75%;
}
#post-primary .customer_columns .thumb img {
	position: absolute;
	left: 0;
	top: 0;
	max-width: none;
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 1rem;
}
#post-primary .customer_columns .data {
	margin: 0 auto;
}
#post-primary .customer_columns .data.-case {
	margin: 0 auto 1.5rem;
}
#post-primary .customer_columns .data dl {
	display: flex;
	justify-content: space-between;
	border-bottom: 1px solid #E4EAF2;
	width: 100%;
}
#post-primary .customer_columns .data dl:first-of-type {
	border-top: 1px solid #E4EAF2;
}
#post-primary .customer_columns .data .column:nth-of-type(2) dl:first-of-type {
	border-top: 0 none;
}
#post-primary .customer_columns .data dl dt {
	display: flex;
	align-items: center;
	padding: 0.75rem 0;
	width: 35%;
	color: #0F1E2D;
	font-weight: 700;
	line-height: 1.5;
}
#post-primary .customer_columns .data dl dd {
	display: flex;
	align-items: center;
	padding: 0.75rem 0;
	width: 65%;
	line-height: 1.5;
}
#post-primary .customer_columns .data dl dd::before {
	display: flex;
	margin: 0 0.75rem;
	content: "";
	width: 1px;
	height: 100%;
	background: #E4EAF2;
}
#post-primary .customer_columns .data dl dd ul {
	display: flex;
	flex-wrap: wrap;
}
#post-primary .customer_columns .data dl dd ul li {
	line-height: 2;
}
#post-primary .customer_columns .data dl dd ul li::after {
	margin: 0 0.5rem;
	content: ",";
}
#post-primary .customer_columns .data dl dd ul li:last-of-type::after {
	display: none;
}
#post-primary .customer_columns .data dl dd ul li a {
	color: #004994;
}
#post-primary .customer_columns .result {
	display: flex;
	flex-direction: column;
	padding: 1.5rem;
	border-radius: 1rem;
	background: #F5F9FA;
	width: 100%;
}
#post-primary .customer_columns .result h3 {
	margin: 0 auto 1rem;
	padding: 0.75rem;
	background: #0097B8;
	color: #fff;
	font-weight: 700;
	text-align: center;
}
#post-primary .customer_columns .result .arrow {
	padding: 1.5rem 0;
	overflow: hidden;
	position: relative;
}
#post-primary .customer_columns .result .arrow::before {
	position: absolute;
	top: calc(50% - 1px);
	left: 50%;
	transform: translateX(-50%);
	width: 100%;
	height: 2px;
	content: '';
	background: #E4EAF2;
}
#post-primary .customer_columns .result .arrow i {
	margin: 0 auto;
	display: block;
	width: 60px;
	height: 60px;
	background-color: #F5F9FA;
	background-image: url("../images/cmn_icon_arrow.svg");
	background-position: center;
	background-repeat: no-repeat;
	transform: rotate(90deg);
	position: relative;
	z-index: 2;
}
#post-primary .customer_detail, #post-primary .case_detail, #post-primary .blog_detail {
	margin: 0 auto 3rem;
	padding: 0 0 3rem;
	border-bottom: 1px dashed #CCD2D9;
	width: 100%;
}
#post-primary .customer_detail:last-of-type, #post-primary .case_detail:last-of-type, #post-primary .blog_detail:last-of-type {
	border-bottom: 0 none;
}
#post-primary .customer_detail h3, #post-primary .case_detail h3, #post-primary .blog_detail h3 {
	margin: 0 auto 3rem;
	font-size: 1.5rem;
	font-weight: 700;
	color: #002C59;
	line-height: 1.5
}
#post-primary .therapist {
	margin: 0 auto;
	padding: 2rem;
	width: 100%;
	border-radius: 1rem;
	background: #F5F9FA;
}
#post-primary .therapist h4 {
	margin: 0 auto 1.5rem;
	font-size: 1.25rem;
	font-weight: 700;
	color: #0097B8;
	line-height: 1.5;
	text-align: center;
}
#post-primary .therapist .wrap .pic {
	margin: 0 auto 1.5rem;
	border: 4px solid #E4EAF2;
	background: #fff;
	border-radius: 100%;
	width: 100%;
	position: relative;
}
#post-primary .therapist .wrap .pic::before {
	content: "";
	display: block;
	padding-top: 100%;
}
#post-primary .therapist .wrap .pic img {
	position: absolute;
	left: 0;
	top: 0;
	max-width: none;
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 100%;
}
#post-primary .therapist .wrap .detail .name {
	margin: 0 auto 3rem;
	padding: 0 0 3rem;
	border-bottom: 1px solid #CCD2D9;
}
#post-primary .therapist .wrap .detail .name dl dt, #post-primary .therapist .wrap .detail .name dl dd {
	margin: 0 auto 0.75rem;
	font-weight: 700;
	color: #002C59;
	text-align: center;
}
#post-primary .therapist .wrap .detail .name dl dd {
	margin: 0 auto;
	font-size: 1.25rem;
}
.post-navi {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	flex-wrap: wrap;
	margin: 0 auto;
	padding: 1.5rem 0;
	border-bottom: 1px solid #CCD2D9;
	border-top: 1px solid #CCD2D9;
	width: 100%;
}
.post-navi .prev {
	margin: 0 0 1.5rem;
}
.post-navi .archive-link {
	margin: 0 .0 1.5rem;
}
.post-navi .prev a, .post-navi .archive-link a, .post-navi .next a {
	display: flex;
	color: #004994;
}
.post-navi .prev a {
	justify-content: flex-start;
	text-align: left;
}
.post-navi .archive-link a {
	justify-content: center;
	text-align: center;
}
.post-navi .next a {
	justify-content: flex-end;
	text-align: right;
}
.post-navi .prev a::before {
	content: "";
	display: block;
	margin: 0 0.5rem;
	width: 1rem;
	height: 1rem;
	background: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 24 24"><path fill="%23004994" d="M16.67 0l2.83 2.829-9.339 9.175 9.339 9.167-2.83 2.829-12.17-11.996z" /></svg>') no-repeat center center;
}
.post-navi .next a::after {
	content: "";
	display: block;
	margin: 0 0 0 0.5rem;
	width: 1rem;
	height: 1rem;
	background: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 24 24"><path fill="%23004994" d="M7.33 24l-2.83-2.829 9.339-9.175-9.339-9.167 2.83-2.829 12.17 11.996z" /></svg>') no-repeat center center;
}
#post-sidebar .post_category {
	margin: 0 auto;
	width: 100%;
}
#post-sidebar .post_category dl {
	margin: 0 auto 1.5rem;
	width: 100%;
	border: 4px solid #E4EAF2;
	border-radius: 1rem 1rem 0 0;
}
#post-sidebar .post_category dl:last-of-type {
	margin: 0 auto;
}
#post-sidebar .post_category dl dt {
	margin: 0 auto;
	padding: 1rem;
	width: 100%;
	border-bottom: 4px solid #E4EAF2;
	color: #002C59;
	font-weight: 700;
	font-size: 1.5rem;
	text-align: center;
	background: #F5F9FA;
	border-radius: 1rem 1rem 0 0;
}
#post-sidebar .post_category dl dd {
	margin: 0 auto;
	padding: 2rem;
	width: 100%;
	background: #FFF;
}
#post-sidebar .post_category dl dd ul {
	display: block;
	list-style: none;
}
#post-sidebar .post_category dl dd ul li {
	margin: 0 0 1.5rem 0;
	padding: 0 0 0 1.5rem;
	background-image: url("../images/cmn_ico_circle.svg");
	background-repeat: no-repeat;
	background-position: left center;
	background-size: 1rem 1rem;
}
#post-sidebar .post_category dl dd ul li:last-child {
	margin: 0;
}
#post-sidebar .post_category dl dd ul li a {
	position: relative;
	color: #004994;
	text-decoration-line: underline;
	text-decoration-color: #004994;
	text-decoration-thickness: 1px;
	text-underline-offset: 0.125rem;
}
#post-sidebar .post_category dl dd ol {
	display: flex;
	flex-wrap: wrap;
	margin: 0 -1rem -1rem 0;
	list-style: none;
}
#post-sidebar .post_category dl dd ol li {
	margin: 0 1rem 1rem 0;
}
#post-sidebar .post_category dl dd ol li:last-child {
	margin: 0 0 1rem 0;
}
#post-sidebar .post_category dl dd ol li a {
	display: block;
	padding: 0.75rem;
	background: #E4EAF2;
}
#archives.-blog .archives_category_blog {
	margin: 0 auto;
	padding: 1.5rem;
	width: 100%;
	background: #F5F9FA;
	border-radius: 1rem;
}
#archives.-blog .archives_category_blog dl {
	margin: 0 auto 1.5rem;
}
#archives.-blog .archives_category_blog dl:last-of-type {
	margin: 0 auto;
}
#archives.-blog .archives_category_blog dl dt {
	margin: 0 auto 1.5rem;
	padding: 1rem;
	width: 100%;
	border-bottom: 1px solid #E4EAF2;
	color: #002C59;
	font-weight: 700;
	font-size: 1.5rem;
	text-align: center;
}
#archives.-blog .archives_category_blog dl dd {
	margin: 0 auto;
	width: 100%;
}
#archives.-blog .archives_category_blog dl dd ul {
	display: block;
	list-style: none;
}
#archives.-blog .archives_category_blog dl dd ul li {
	margin: 0 0 1.5rem 0;
	padding: 0 0 0 1.5rem;
	background-image: url("../images/cmn_ico_circle.svg");
	background-repeat: no-repeat;
	background-position: left center;
	background-size: 1rem 1rem;
}
#archives.-blog .archives_category_blog dl dd ul li:last-child {
	margin: 0;
}
#archives.-blog .archives_category_blog dl dd ul li a {
	position: relative;
	color: #004994;
	text-decoration-line: underline;
	text-decoration-color: #004994;
	text-decoration-thickness: 1px;
	text-underline-offset: 0.125rem;
}
#archives.-blog .archives_category_blog dl dd ol {
	display: flex;
	flex-wrap: wrap;
	margin: 0 -1rem -1rem 0;
	list-style: none;
}
#archives.-blog .archives_category_blog dl dd ol li {
	margin: 0 1rem 1rem 0;
}
#archives.-blog .archives_category_blog dl dd ol li:last-child {
	margin: 0 0 1rem 0;
}
#archives.-blog .archives_category_blog dl dd ol li a {
	display: block;
	padding: 0.75rem;
	background: #FFF;
}
#archives.-blog .archives_tags {
	margin: 0 auto;
	padding: 1.5rem;
	width: 100%;
	background: #F5F9FA;
	border-radius: 1rem;
}
#archives.-blog .archives_tags dl {
	margin: 0 auto;
}
#archives.-blog .archives_tags dl dt {
	margin: 0 auto 1.5rem;
	padding: 1rem;
	width: 100%;
	border-bottom: 1px solid #E4EAF2;
	color: #002C59;
	font-weight: 700;
	font-size: 1.5rem;
	text-align: center;
}
#archives.-blog .archives_tags dl dd {
	margin: 0 auto;
	width: 100%;
}
#archives.-blog .archives_tags dl dd ol {
	display: flex;
	flex-wrap: wrap;
	margin: 0 -1rem -1rem 0;
	list-style: none;
}
#archives.-blog .archives_tags dl dd ol li {
	margin: 0 1rem 1rem 0;
}
#archives.-blog .archives_tags dl dd ol li:last-child {
	margin: 0 0 1rem 0;
}
#archives.-blog .archives_tags dl dd ol li a {
	display: block;
	padding: 0.75rem;
	background: #FFF;
}
#post-primary .blog_hgroup {
	display: block;
	margin: 0 auto 2rem;
	width: 100%;
	overflow: hidden;
}
#post-primary .blog_hgroup p {
	display: block;
	position: relative;
	margin: 0 0 1.5rem;
	font-weight: 700;
	line-height: 1;
}
#post-primary .blog_hgroup p span {
	padding: 0 0.75rem 0 0;
	color: #f4a116;
}
#post-primary .blog_hgroup p::after {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 100%;
	height: 2px;
	background: #004994;
	content: '';
}
#post-primary .blog_hgroup h2 {
	margin: 0 auto 1.5rem;
	padding: 0 0 1.5rem;
	border-bottom: 2px solid #004994;
	font-size: 1.5rem;
	font-weight: 700;
	line-height: 1.5;
	color: #0f1e2d;
}
#post-primary .blog_hgroup ul {
	display: flex;
	flex-wrap: wrap;
	margin: 0 auto 1rem;
	width: 100%;
}
#post-primary .blog_hgroup ul li {
	margin: 0 1rem 1rem 0;
}
#post-primary .blog_hgroup ul li a {
	display: flex;
	align-item: center;
	color: #002C59;
	text-decoration-line: underline;
	text-decoration-color: #002C59;
	text-decoration-thickness: 1px;
	text-underline-offset: 0.125rem;
}
#post-primary .blog_hgroup ul.category li a::before {
	margin: 0 0.25rem;
	display: block;
	content: "";
	width: 1rem;
	height: 1rem;
	background: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 24 24"><path fill="%23f4a116" d="M0 2h8l3 3h10v4h3l-4 13h-20v-20zm22.646 8h-17.907l-3.385 11h17.907l3.385-11zm-2.646-1v-3h-9.414l-3-3h-6.586v15.75l3-9.75h16z" /></svg>') no-repeat center center;
}
#post-primary .blog_hgroup ul.tag li a::before {
	margin: 0 0.25rem;
	display: block;
	content: "";
	width: 1rem;
	height: 1rem;
	background: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 24 24"><path fill="%23f4a116" d="M10.605 0h-10.605v10.609l13.391 13.391 10.609-10.604-13.395-13.396zm-4.191 6.414c-.781.781-2.046.781-2.829.001-.781-.783-.781-2.048 0-2.829.782-.782 2.048-.781 2.829-.001.782.782.781 2.047 0 2.829z" /></svg>') no-repeat center center;
}
#post-primary .blog_thumb {
	margin: 0 auto;
	width: 100%;
	position: relative;
}
#post-primary .blog_thumb::before {
	content: "";
	display: block;
	padding-top: 100%;
}
#post-primary .blog_thumb img {
	position: absolute;
	left: 0;
	top: 0;
	max-width: none;
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 1rem;
}
#post-primary .blog_detail h4 {
	margin: 0 auto 1.5rem;
	font-size: 1.25rem;
	font-weight: 700;
	color: #002C59;
	line-height: 1.5;
}
#post-primary .blog_detail h5 {
	margin: 0 auto 1.5rem;
	font-size: 1rem;
	font-weight: 700;
	line-height: 1.5;
}
#post-primary .blog_detail p {
	margin: 0 auto 1.5rem;
	line-height: 2;
}
#post-primary .blog_detail ul {
	margin: 0 auto 1.5rem;
	list-style: disc;
}
#post-primary .blog_detail ul li {
	margin: 0 0 0.75rem 1.5rem;
	list-style: disc;
	line-height: 2;
}
#post-primary .blog_detail .blog_pic {
	margin: 0 auto 1.5rem;
	width: 100%;
	position: relative;
}
#post-primary .blog_detail .blog_pic::before {
	content: "";
	display: block;
	padding-top: 100%;
}
#post-primary .blog_detail .blog_pic img {
	position: absolute;
	left: 0;
	top: 0;
	max-width: none;
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 1rem;
}
#cmn .contact_columns h3 {
	margin: 0 auto 1rem;
	color: #002C59;
	font-size: 1.5rem;
	font-weight: 700;
	line-height: 1.5;
}
#cmn .contact_columns .number {
	margin: 0 auto 1.5rem;
	width: 100%;
}
#cmn .contact_columns .number img {
	border-radius: 0;
	width: auto;
	height: 50px;
}
#cmn .contact_columns .wrap {
	display: block;
	margin: 0 auto;
	width: 100%;
}
#cmn .contact_columns .wrap li {
	margin: 0 auto 1rem;
	width: 100%;
	display: flex;
	align-items: center;
}
#cmn .contact_columns .wrap li:last-of-type {
	margin: 0 auto;
}
#cmn .contact_columns .wrap li h4 {
	margin: 0 1rem 0 0;
	padding: 0.5rem 1rem;
	font-size: 1rem;
	font-weight: 700;
	color: #fff;
	background: #0097B8;
	width: 35%;
	max-width: 200px;
	text-align: center;
}
#cmn .contact_columns .wrap li p {
	font-size: 1.25rem;
}
#cmn .contact_columns .mailtxt {
	margin: 0 auto 3rem;
}
#contactform {
	margin: 0 auto;
	width: 100%;
}
#contactform ul {
	margin: 0 auto 2rem;
	width: 100%;
}
#contactform ul li {
	display: block;
	margin: 0 auto 1rem;
}
#contactform ul li b.must {
	display: inline-block;
	margin: 0 auto 1rem;
	padding: 0.25rem 0.5rem;
	color: #fff;
	font-size: 0.875rem;
	font-weight: 700;
	text-align: center;
	background: #c00;
	white-space: nowrap;
}
#contactform ul li dl {
	display: block;
	margin: 0 auto 3rem;
	padding: 0;
	width: 100%;
}
#contactform ul li dl dt {
	margin: 0 auto 1rem;
	padding: 0 0 1rem;
	border-bottom: 1px solid #E4EAF2;
	border-right: 0 none;
	width: 100%;
	font-weight: 700;
}
#contactform ul li dl dd {
	display: block;
	width: 100%;
}
#contactform ul li dl dd b {
	display: inline-block;
	margin: 0;
	padding: 0 0.5rem;
	font-weight: 400;
}
#contactform ul li dl dd input[type='text'], #contactform ul li dl dd input[type='email'], #contactform ul li dl dd input[type='tel'] {
	padding: 0.25rem;
	transition: 0.3s;
	border: 1px solid #e5e5e5;
	border-radius: 4px;
	background: #fff;
}
#contactform ul li dl dd input[type='text']:focus, #contactform ul li dl dd input[type='email']:focus, #contactform ul li dl dd input[type='tel']:focus {
	border: 1px solid #da3c41;
	outline: none;
	box-shadow: 0 0 5px 1px rgba(218, 60, 65, .5);
}
::placeholder {
	color: #b9c1c7;
}
#contactform ul li dl dd input.short {
	width: 100px;
}
#contactform ul li dl dd input.normal {
	width: 100px;
}
#contactform ul li dl dd input.medium {
	width: 200px;
}
#contactform ul li dl dd input.long {
	width: 100%;
}
#contactform ul li dl dd.birthday {
	margin: 0;
	display: flex;
}
#contactform ul li dl dd.birthday input.short {
	width: 40px;
}
#contactform ul li dl dd.birthday input.normal {
	width: 80px;
}
#contactform ul li dl dd.tel {
	margin: 0;
	display: flex;
}
#contactform ul li dl dd.tel input.short {
	width: 80px;
}
#contactform ul li dl dd label {
	display: block;
	margin: 0 0 1.5rem;
}
#contactform ul li dl dd label:last-of-type {
	margin: 0;
}
#contactform ul li dl dd textarea {
	width: 100%;
	padding: 0.25rem;
	transition: 0.3s;
	border: 1px solid #e5e5e5;
	border-radius: 4px;
	background: #fff;
}
#contactform ul li dl dd textarea:focus {
	border: 1px solid #da3c41;
	outline: none;
	box-shadow: 0 0 5px 1px rgba(218, 60, 65, .5);
}
#contactform ul li dl dd input[type=checkbox], #contactform ul li dl dd input[type=radio] {
	margin: 0 0.5rem 0 0;
	appearance: none;
	position: relative;
	top: 0.25rem;
	height: 1.5rem;
	width: 1.5rem;
	transition: all .15s ease-out 0s;
	color: #fff;
	cursor: pointer;
	display: inline-block;
	outline: none;
	border-radius: 99;
}
#contactform ul li dl dd input[type=checkbox]::before, #contactform ul li dl dd input[type=checkbox]::after {
	position: absolute;
	content: "";
	background: #fff;
	transition: all .2s ease-in-out;
}
#contactform ul li dl dd input[type=checkbox]::before {
	left: 2px;
	top: 6px;
	width: 0;
	height: 2px;
	transform: rotate(45deg);
}
#contactform ul li dl dd input[type=checkbox]::after {
	right: 9px;
	bottom: 3px;
	width: 2px;
	height: 0;
	transform: rotate(40deg);
	transition-delay: .2s;
}
#contactform ul li dl dd input[type=checkbox]:checked::before {
	left: 4px;
	top: 13px;
	width: 6px;
	height: 2px;
}
#contactform ul li dl dd input[type=checkbox]:checked::after {
	right: 8px;
	bottom: 4px;
	width: 2px;
	height: 14px;
}
#contactform ul li dl dd input[type=checkbox]:indeterminate::before, #contactform ul li dl dd input[type=checkbox]:indeterminate::after {
	width: 7px;
	height: 2px;
	transform: rotate(0);
}
#contactform ul li dl dd input[type=checkbox]:indeterminate::before {
	left: 1px;
	top: 7px;
}
#contactform ul li dl dd input[type=checkbox]:indeterminate::after {
	right: 1px;
	bottom: 7px;
}
#contactform ul li dl dd input[type=radio] {
	border-radius: 99px;
}
#contactform ul li dl dd input[type=radio]:checked::before {
	transform: scale(1);
}
#contactform ul li dl dd input[type=radio]::before {
	content: "";
	display: block;
	width: 13px;
	height: 13px;
	border-radius: 50%;
	margin: -8px;
	transform: scale(0);
	transition: all ease-out 250ms;
	position: relative;
	left: 10px;
	top: 10px;
}
#contactform ul li dl dd input[type=checkbox], #contactform ul li dl dd input[type=radio] {
	border: 2px solid #0097b8;
}
#contactform ul li dl dd input[type=checkbox]:checked, #contactform ul li dl dd input[type=radio]:checked:before {
	background: #0097b8;
}
#contactform .submit {
	margin: 0 auto;
	width: 100%;
	-webkit-transition: all 0.25s;
	-moz-transition: all 0.25s;
	transition: all 0.25s;
	position: relative;
}
#contactform .submit:hover {
	margin: 0 auto -0.375rem;
	padding: 0.375rem 0 0;
}
#contactform .submit input[type=submit] {
	margin: 0 auto;
	padding: 2rem;
	width: 100%;
	background: #E69E2D;
	border-bottom: 0.5rem solid #C8822D;
	border-radius: 0.5rem;
	color: #fff;
	font-size: 1.25rem;
	font-weight: 700;
	cursor: pointer;
	position: relative;
	text-align: center;
	-webkit-transition: all 0.25s;
	-moz-transition: all 0.25s;
	transition: all 0.25s;
}
#contactform .submit::before {
	display: block;
	width: 2rem;
	height: 2rem;
	position: absolute;
	left: 2rem;
	top: 1.75rem;
	content: "";
	background: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 24 24"><path fill="%23FFFFFF" d="M24 0l-6 22-8.129-7.239 7.802-8.234-10.458 7.227-7.215-1.754 24-12zm-15 16.668v7.332l3.258-4.431-3.258-2.901z" /></svg>') no-repeat center center;
	z-index: 2;
	-webkit-transition: all 0.25s;
	-moz-transition: all 0.25s;
	transition: all 0.25s;
}
.error404 {
	margin: 0 auto 3rem;
}