@charset "UTF-8";
/*
Theme Name: gajumaru-dent
*/
/* ----------------------------- リセット */
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, var, b, i,
dl dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
		margin: 0;
		padding: 0;
		border: 0;
		outline: 0;
		vertical-align: baseline;
		background: transparent;
		font-size: 100%; }

body {
		line-height: 1; }

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
		display: block; }

ol, ul {
		list-style: none; }

blockquote, q {
		quotes: none; }

blockquote:before, blockquote:after,
q:before, q:after {
		content: "";
		content: none; }

a {
		margin: 0;
		padding: 0;
		vertical-align: baseline;
		background: transparent; }

ins {
		background-color: #ff9;
		color: #000;
		text-decoration: none; }

mark {
		background-color: #ff9;
		color: #000;
		font-style: italic;
		font-weight: bold; }

del {
		text-decoration: line-through; }

abbr[title], dfn[title] {
		border-bottom: 1px dotted;
		cursor: help; }

table {
		border-collapse: collapse;
		border-spacing: 0; }

hr {
		display: block;
		height: 1px;
		border: 0;
		border-top: 1px solid #ccc;
		margin: 1em 0;
		padding: 0; }

input, select {
		vertical-align: middle; }

img {
		vertical-align: top;
		font-size: 0;
		line-height: 0; }

sup {
		font-size: 8px; }

em {
		font-style: normal; }

div:before, div:after, ul:before, ul:after, ol:before, ol:after, dl:before, dl:after {
		content: "";
		display: block; }

div:after, ul:after, ol:after, dl:after {
		clear: both; }

div, ul, ol, dl {
		zoom: 1; }

ul#wp-admin-bar-root-default:after {
		clear: none; }

/* =======================================
記事詳細
========================================*/
#entrybody {
		font-size: 16px;
		font-size: 1.6rem;
		margin-top: 0;
		word-break: break-all;
		line-height: 180%; }
		#entrybody ul, #entrybody ol {
				margin-top: 12px;
				margin-bottom: 12px;
				list-style-position: inside;
				text-align: left; }
				#entrybody ul ul, #entrybody ul ol, #entrybody ol ul, #entrybody ol ol {
						margin-left: 2em; }
				#entrybody ul li, #entrybody ol li {
						text-align: left; }
		#entrybody ol {
				list-style-type: decimal; }
		#entrybody li ul {
				margin-top: 3px; }
		#entrybody li li {
				font-size: 13px;
				font-size: 1.3rem; }
		#entrybody strong,
		#entrybody strong span {
				font-weight: bold !important; }
		#entrybody span strong,
		#entrybody del strong,
		#entrybody em strong {
				font-weight: bold !important; }
		#entrybody em {
				font-style: italic !important; }
		#entrybody dfn {
				font-style: normal;
				border-bottom: 1px dotted #333; }
		#entrybody p {
				font-size: clamp(12.8px, 1.143vw, 19.2px);
				line-height: 225%;
				font-weight: 400;
				margin-bottom: 2.571vw;
				clear: both;
				*zoom: 1; }
				#entrybody p:after {
						display: block;
						content: "";
						clear: both; }
		#entrybody blockquote {
				margin-top: 15px;
				margin-bottom: 15px;
				background: #d6e1e1;
				border-radius: 10px;
				padding: 4.545% 5%; }
				#entrybody blockquote cite {
						font-style: italic; }
				#entrybody blockquote p:last-child {
						margin-bottom: 0; }
				#entrybody blockquote a {
						color: #333; }
		#entrybody img {
				margin-bottom: 1em; }
		#entrybody iframe {
				max-width: 100%; }
		#entrybody .u-youtube-wrap {
				padding-top: 56.25%; }
		#entrybody h1 {
				font-size: 28px;
				font-size: 2.8rem;
				line-height: 150%; }
		#entrybody h2 {
				font-size: clamp(20.8px, 1.857vw, 31.2px);
				line-height: 175%;
				font-weight: 500;
				padding: 4.286vw 0 2.857vw; }
		#entrybody h3 {
				font-size: 21px;
				font-size: 2.1rem;
				line-height: 150%; }
		#entrybody h4 {
				font-size: 18px;
				font-size: 1.8rem;
				line-height: 150%; }
		#entrybody h5 {
				font-size: 16px;
				font-size: 1.6rem;
				line-height: 150%; }
		#entrybody h6 {
				font-size: 15px;
				font-size: 1.5rem;
				line-height: 150%; }
		#entrybody table {
				width: 100%; }
				#entrybody table thead {
						background-color: #1C1C1C;
						color: #fff;
						font-size: 15px;
						font-size: 1.5rem; }
						#entrybody table thead th,
						#entrybody table thead td {
								border-color: #fff; }
				#entrybody table th,
				#entrybody table td {
						border: 1px solid #d7e2e2;
						padding: 6px 8px;
						text-align: left; }
				#entrybody table th {
						font-weight: bold; }

.alignleft,
img.alignleft {
		display: inline;
		float: left;
		margin-right: 20px;
		margin-top: 4px; }

.alignright,
img.alignright {
		display: inline;
		float: right;
		margin-left: 20px;
		margin-top: 4px; }

.aligncenter,
img.aligncenter {
		clear: both;
		display: block;
		margin-left: auto;
		margin-right: auto; }

img.alignleft,
img.alignright,
img.aligncenter {
		margin-bottom: 12px; }

.wp-caption {
		border: none;
		background: #f1f1f1;
		color: #888;
		font-size: 12px;
		font-size: 1.2rem;
		line-height: 18px;
		text-align: center;
		margin-bottom: 20px;
		padding: 4px;
		border-radius: 0; }
		.wp-caption img {
				margin: 5px; }
		.wp-caption p.wp-caption-text {
				margin-bottom: 4px; }

.wp-smiley {
		margin: 0; }

body#tinymce ul,
body#tinymce ol {
		margin-bottom: 1.5em; }

body#tinymce ul li {
		list-style: disc; }

body#tinymce ol li {
		list-style: decimal; }

@media screen and (max-width: 768px) {
		.alignleft,
		img.alignleft {
				margin-right: 0;
				float: none; }
		.alignright,
		img.alignright {
				margin-left: 0;
				float: none; }
		img.alignleft,
		img.alignright,
		img.aligncenter {
				margin-bottom: 10px !important; }
		#entrybody h2 {
				font-size: clamp(16px, 5.333vw, 24px); }
		#entrybody p {
				font-size: clamp(12px, 4vw, 18px); } }

/* ----------------------------- 全体 */
html {
		font-size: 62.5%; }

body {
		font-size: 16px;
		font-size: 1.6rem;
		font-family: "Zen Kaku Gothic New", "Roboto", Helvetica, "Noto Sans JP", "ヒラギノ角ゴPro W3", "Hiragino Kaku Gothic Pro", "游ゴシック体", YuGothic, "小塚ゴシック Pro L", "Kozuka Gothic Pro Light", "メイリオ", Meiryo, "ＭＳ　Ｐゴシック", "MS PGothic", sans-serif;
		min-width: 1020px;
		position: relative;
		color: #333;
		background-color: #F9F9F9;
		font-weight: 400;
		line-height: 150%;
		-webkit-text-size-adjust: 100%; }
		body.is-modal-open {
				overflow: hidden; }

::-webkit-input-placeholder {
		color: #C3C5C6; }

:-ms-input-placeholder {
		color: #C3C5C6; }

::-placeholder {
		color: #C3C5C6; }

a:link, a:visited {
		color: #333;
		text-decoration: underline; }

a:hover, a:active {
		color: #333;
		text-decoration: none; }

a, a img {
		-webkit-transition: 0.3s ease all;
		-moz-transition: 0.3s ease all;
		-ms-transition: 0.3s ease all;
		transition: 0.3s ease all; }

a:hover {
		opacity: 0.7;
		-ms-filter: "alpha(opacity=70)";
		filter: alpha(opacity=70); }

@media screen and (min-width: 768px) {
		.sp-only {
				display: none !important; } }

@media screen and (max-width: 767px) {
		.pc-only {
				display: none !important; } }

img,
.bx-wrapper img {
		max-width: 100%;
		height: auto; }

.bx-wrapper img {
		display: inline !important; }

/* ----------------------------- 0. 共通パーツ */
.u-mt-0 {
		margin-top: 0 !important; }

.u-mt-5 {
		margin-top: 5px !important; }

.u-mt-10 {
		margin-top: 10px !important; }

.u-mt-15 {
		margin-top: 15px !important; }

.u-mt-20 {
		margin-top: 20px !important; }

.u-mt-25 {
		margin-top: 25px !important; }

.u-mt-30 {
		margin-top: 30px !important; }

.u-mt-35 {
		margin-top: 35px !important; }

.u-mt-40 {
		margin-top: 40px !important; }

.u-mt-45 {
		margin-top: 45px !important; }

.u-mt-50 {
		margin-top: 50px !important; }

.u-mt-55 {
		margin-top: 55px !important; }

.u-mt-60 {
		margin-top: 60px !important; }

.u-mt-65 {
		margin-top: 65px !important; }

.u-mt-70 {
		margin-top: 70px !important; }

.u-mt-75 {
		margin-top: 75px !important; }

.u-mt-80 {
		margin-top: 80px !important; }

.u-mb-0 {
		margin-bottom: 0 !important; }

.u-mb-5 {
		margin-bottom: 5px !important; }

.u-mb-10 {
		margin-bottom: 10px !important; }

.u-mb-15 {
		margin-bottom: 15px !important; }

.u-mb-20 {
		margin-bottom: 20px !important; }

.u-mb-25 {
		margin-bottom: 25px !important; }

.u-mb-30 {
		margin-bottom: 30px !important; }

.u-mb-35 {
		margin-bottom: 35px !important; }

.u-mb-40 {
		margin-bottom: 40px !important; }

.u-mb-45 {
		margin-bottom: 45px !important; }

.u-mb-50 {
		margin-bottom: 50px !important; }

.u-mb-55 {
		margin-bottom: 55px !important; }

.u-mb-60 {
		margin-bottom: 60px !important; }

.u-mb-65 {
		margin-bottom: 65px !important; }

.u-mb-70 {
		margin-bottom: 70px !important; }

.u-mb-75 {
		margin-bottom: 75px !important; }

.u-mb-80 {
		margin-bottom: 80px !important; }

.u-pt-0 {
		padding-top: 0 !important; }

.u-pt-5 {
		padding-top: 5px !important; }

.u-pt-10 {
		padding-top: 10px !important; }

.u-pt-15 {
		padding-top: 15px !important; }

.u-pt-20 {
		padding-top: 20px !important; }

.u-pt-25 {
		padding-top: 25px !important; }

.u-pt-30 {
		padding-top: 30px !important; }

.u-pt-35 {
		padding-top: 35px !important; }

.u-pt-40 {
		padding-top: 40px !important; }

.u-pt-45 {
		padding-top: 45px !important; }

.u-pt-50 {
		padding-top: 50px !important; }

.u-pt-55 {
		padding-top: 55px !important; }

.u-pt-60 {
		padding-top: 60px !important; }

.u-pt-65 {
		padding-top: 65px !important; }

.u-pt-70 {
		padding-top: 70px !important; }

.u-pt-75 {
		padding-top: 75px !important; }

.u-pt-80 {
		padding-top: 80px !important; }

.u-pb-0 {
		padding-bottom: 0 !important; }

.u-pb-5 {
		padding-bottom: 5px !important; }

.u-pb-10 {
		padding-bottom: 10px !important; }

.u-pb-15 {
		padding-bottom: 15px !important; }

.u-pb-20 {
		padding-bottom: 20px !important; }

.u-pb-25 {
		padding-bottom: 25px !important; }

.u-pb-30 {
		padding-bottom: 30px !important; }

.u-pb-35 {
		padding-bottom: 45px !important; }

.u-pb-40 {
		padding-bottom: 40px !important; }

.u-pb-46 {
		padding-bottom: 45px !important; }

.u-pb-50 {
		padding-bottom: 50px !important; }

.u-pb-55 {
		padding-bottom: 55px !important; }

.u-pb-60 {
		padding-bottom: 60px !important; }

.u-pb-65 {
		padding-bottom: 65px !important; }

.u-pb-70 {
		padding-bottom: 70px !important; }

.u-pb-75 {
		padding-bottom: 75px !important; }

.u-pb-80 {
		padding-bottom: 80px !important; }

.u-col {
		color: #1C1C1C; }
		.u-col__red {
				color: #f84525; }
		.u-col__blue {
				color: #3399FF; }

.u-mincho {
		font-family: "Noto Serif JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "リュウミン R-KL", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif; }

.u-gothic {
		font-family: "Zen Kaku Gothic New", "Roboto", Helvetica, "Noto Sans JP", "ヒラギノ角ゴPro W3", "Hiragino Kaku Gothic Pro", "游ゴシック体", YuGothic, "小塚ゴシック Pro L", "Kozuka Gothic Pro Light", "メイリオ", Meiryo, "ＭＳ　Ｐゴシック", "MS PGothic", sans-serif; }

.u-italic {
		font-style: italic; }

.u-bold {
		font-style: bold; }

.u-underline {
		font-style: underline; }

.u-center {
		text-align: center !important; }
		.u-center th, .u-center td {
				text-align: center !important; }

.u-right {
		text-align: right !important; }
		.u-right th, .u-right td {
				text-align: right !important; }

.u-left {
		text-align: left !important; }
		.u-left th, .u-left td {
				text-align: left !important; }

.u-top {
		vertical-align: top !important; }
		.u-top th, .u-top td {
				vertical-align: top !important; }

.u-middle {
		vertical-align: middle !important; }
		.u-middle th, .u-middle td {
				vertical-align: middle !important; }

.u-bottom {
		vertical-align: bottom !important; }
		.u-bottom th, .u-bottom td {
				vertical-align: bottom !important; }

.container {
		max-width: 1020px;
		margin-left: auto;
		margin-right: auto;
		padding-left: 15px;
		padding-right: 15px; }

.container-750 {
		max-width: 750px;
		margin-left: auto;
		margin-right: auto;
		padding-left: 15px;
		padding-right: 15px; }

.container-wide {
		width: 100%;
		padding-left: 15px;
		padding-right: 15px;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box; }

.left {
		float: left; }

.right {
		float: right; }

.u-bg1 {
		background: #F4F4F4; }

.u-gap {
		padding-top: 84px;
		padding-bottom: 84px; }

.c-separate1 {
		border-bottom: 1px solid #efefef;
		padding-bottom: 60px;
		margin-bottom: 60px; }

.sidebar-right__content {
		float: left;
		width: 62.7450%; }

.sidebar-right__sidebar {
		float: right;
		width: 29.4117%; }

.sidebar-right-over__content {
		float: right;
		width: 50%;
		background: #ccc; }

.sidebar-right-over__sidebar {
		float: left;
		width: 45.1428%;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
		padding-left: calc(50vw - 510px); }
		.sidebar-right-over__sidebar .wrap {
				background: #ccc; }

.sidebar-left__content {
		float: right;
		width: 62.7450%; }

.sidebar-left__sidebar {
		float: left;
		width: 29.4117%; }

.sidebar-left-over__content {
		float: left;
		width: 50%;
		background: #ccc; }

.sidebar-left-over__sidebar {
		float: right;
		width: 45.1428%;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
		padding-right: calc(50vw - 510px); }
		.sidebar-left-over__sidebar .wrap {
				background: #ccc; }

.col2 > div,
.col2 > li {
		float: left;
		width: 49.0196%;
		margin-left: 1.9608%;
		margin-bottom: 60px; }
		.col2 > div:nth-child(2n+1),
		.col2 > li:nth-child(2n+1) {
				clear: both;
				margin-left: 0; }

.col3 > div,
.col3 > li {
		float: left;
		width: 31.3725%;
		margin-left: 2.94125%;
		margin-bottom: 60px; }
		.col3 > div:nth-child(3n+1),
		.col3 > li:nth-child(3n+1) {
				clear: both;
				margin-left: 0; }

.col4 > div,
.col4 > li {
		float: left;
		width: 22.7450%;
		margin-left: 3.0066%;
		margin-bottom: 60px; }
		.col4 > div:nth-child(4n+1),
		.col4 > li:nth-child(4n+1) {
				clear: both;
				margin-left: 0; }
		.col4 > div .c-link4,
		.col4 > li .c-link4 {
				margin-top: 16px; }

.c-btn1 {
		margin-top: 60px;
		text-align: center; }
		.c-btn1 a,
		.c-btn1 .anchor {
				display: inline-block;
				*display: inline;
				*zoom: 1;
				background: #3F4BE3;
				color: #fff;
				text-decoration: none;
				padding: 15px 27px;
				border-radius: 24px;
				font-size: 16px;
				font-size: 1.6rem;
				line-height: 140%;
				font-weight: bold;
				border: 1px solid #3F4BE3; }
				.c-btn1 a span,
				.c-btn1 .anchor span {
						display: block;
						background: url(img/common/arrow_1-white.svg) no-repeat right center;
						background-size: 5px auto;
						padding-right: 14px; }
		.c-btn1 a:hover {
				background: #fff;
				color: #3F4BE3;
				opacity: 1;
				-ms-filter: "alpha(opacity=100)";
				filter: alpha(opacity=100); }
				.c-btn1 a:hover span {
						background-image: url(img/common/arrow_1.svg); }
		.c-btn1.is-disabled .anchor {
				background-color: #3C8CB4;
				border-color: #3C8CB4; }
		.c-btn1__alt a,
		.c-btn1__alt .anchor {
				background: #fff;
				color: #3F4BE3; }
				.c-btn1__alt a span,
				.c-btn1__alt .anchor span {
						background-image: url(img/common/arrow_1.svg); }
		.c-btn1__alt a:hover {
				background: #3F4BE3;
				color: #fff;
				opacity: 1;
				-ms-filter: "alpha(opacity=100)";
				filter: alpha(opacity=100); }
				.c-btn1__alt a:hover span {
						background-image: url(img/common/arrow_1-white.svg); }
		.c-btn1__alt.is-disabled .anchor {
				background-color: #fff !important;
				border-color: #3C8CB4 !important;
				color: #3C8CB4 !important; }
				.c-btn1__alt.is-disabled .anchor span {
						background-image: url(img/common/arrow_1-gray.svg) !important; }

.c-btn2 {
		margin-top: 60px;
		text-align: center; }
		.c-btn2 .anchor {
				-webkit-transition: 0.3s ease all;
				-moz-transition: 0.3s ease all;
				-ms-transition: 0.3s ease all;
				transition: 0.3s ease all; }
		.c-btn2 a,
		.c-btn2 .anchor {
				display: inline-block;
				*display: inline;
				*zoom: 1;
				background: #3F4BE3;
				color: #fff;
				text-decoration: none;
				padding: 15px 25px;
				font-size: 16px;
				font-size: 1.6rem;
				line-height: 140%;
				font-weight: bold;
				border: 1px solid #3F4BE3; }
				.c-btn2 a span,
				.c-btn2 .anchor span {
						display: block;
						background: url(img/common/arrow_1-white.svg) no-repeat right center;
						background-size: 5px auto;
						padding-right: 14px; }
		.c-btn2 a:hover {
				background: #fff;
				color: #3F4BE3;
				opacity: 1;
				-ms-filter: "alpha(opacity=100)";
				filter: alpha(opacity=100); }
				.c-btn2 a:hover span {
						background-image: url(img/common/arrow_1.svg); }
		.c-btn2.is-disabled .anchor {
				background-color: #3C8CB4;
				border-color: #3C8CB4; }
		.c-btn2__alt a,
		.c-btn2__alt .anchor {
				background: #fff;
				color: #3F4BE3; }
				.c-btn2__alt a span,
				.c-btn2__alt .anchor span {
						background-image: url(img/common/arrow_1.svg); }
		.c-btn2__alt a:hover {
				background: #3F4BE3;
				color: #fff;
				opacity: 1;
				-ms-filter: "alpha(opacity=100)";
				filter: alpha(opacity=100); }
				.c-btn2__alt a:hover span {
						background-image: url(img/common/arrow_1-white.svg); }
		.c-btn2__alt.is-disabled .anchor {
				background-color: #fff !important;
				border-color: #3C8CB4 !important;
				color: #3C8CB4 !important; }
				.c-btn2__alt.is-disabled .anchor span {
						background-image: url(img/common/arrow_1-gray.svg) !important; }

.c-btn3 {
		margin-top: 60px;
		text-align: center; }
		.c-btn3 .anchor {
				-webkit-transition: 0.3s ease all;
				-moz-transition: 0.3s ease all;
				-ms-transition: 0.3s ease all;
				transition: 0.3s ease all; }
		.c-btn3 a,
		.c-btn3 .anchor {
				display: inline-block;
				*display: inline;
				*zoom: 1;
				background: #3F4BE3;
				color: #fff;
				text-decoration: none;
				padding: 15px 27px;
				border-radius: 24px;
				font-size: 16px;
				font-size: 1.6rem;
				line-height: 140%;
				font-weight: bold;
				border: 1px solid #3F4BE3; }
				.c-btn3 a span,
				.c-btn3 .anchor span {
						display: block;
						background-repeat: no-repeat;
						background-position: left center;
						background-size: 16px auto;
						padding-left: 24px; }
						.c-btn3 a span.is-email,
						.c-btn3 .anchor span.is-email {
								background-image: url(img/common/icon_email-white.svg); }
		.c-btn3 a:hover {
				background: #fff;
				color: #3F4BE3;
				opacity: 1;
				-ms-filter: "alpha(opacity=100)";
				filter: alpha(opacity=100); }
				.c-btn3 a:hover span.is-email {
						background-image: url(img/common/icon_email-blue.svg); }
		.c-btn3.is-disabled .anchor {
				background-color: #3C8CB4;
				border-color: #3C8CB4; }
		.c-btn3__alt a,
		.c-btn3__alt .anchor {
				background: #fff;
				color: #3F4BE3; }
				.c-btn3__alt a span.is-email,
				.c-btn3__alt .anchor span.is-email {
						background-image: url(img/common/icon_email-blue.svg); }
		.c-btn3__alt a:hover {
				background: #3F4BE3;
				color: #fff;
				opacity: 1;
				-ms-filter: "alpha(opacity=100)";
				filter: alpha(opacity=100); }
				.c-btn3__alt a:hover span.is-email {
						background-image: url(img/common/icon_email-white.svg); }
		.c-btn3__alt.is-disabled .anchor {
				background-color: #fff !important;
				color: #3C8CB4 !important; }
				.c-btn3__alt.is-disabled .anchor span.is-email {
						background-image: url(img/common/icon_email-gray.svg) !important; }

.c-btn4 {
		margin-top: 60px;
		text-align: center; }
		.c-btn4 .anchor {
				-webkit-transition: 0.3s ease all;
				-moz-transition: 0.3s ease all;
				-ms-transition: 0.3s ease all;
				transition: 0.3s ease all; }
		.c-btn4 a,
		.c-btn4 .anchor {
				display: inline-block;
				*display: inline;
				*zoom: 1;
				background: #3F4BE3;
				color: #fff;
				text-decoration: none;
				padding: 15px 27px;
				font-size: 16px;
				font-size: 1.6rem;
				line-height: 140%;
				font-weight: bold;
				border: 1px solid #3F4BE3; }
				.c-btn4 a span,
				.c-btn4 .anchor span {
						background-repeat: no-repeat;
						background-position: left center;
						background-size: 16px auto;
						padding-left: 24px; }
						.c-btn4 a span.is-email,
						.c-btn4 .anchor span.is-email {
								background-image: url(img/common/icon_email-white.svg); }
		.c-btn4 a:hover {
				background: #fff;
				color: #3F4BE3;
				opacity: 1;
				-ms-filter: "alpha(opacity=100)";
				filter: alpha(opacity=100); }
				.c-btn4 a:hover span.is-email {
						background-image: url(img/common/icon_email-blue.svg); }
		.c-btn4.is-disabled .anchor {
				background-color: #3C8CB4;
				border-color: #3C8CB4; }
		.c-btn4__alt a,
		.c-btn4__alt .anchor {
				background: #fff;
				color: #3F4BE3; }
				.c-btn4__alt a span.is-email,
				.c-btn4__alt .anchor span.is-email {
						background-image: url(img/common/icon_email-blue.svg); }
		.c-btn4__alt a:hover {
				background: #3F4BE3;
				color: #fff;
				opacity: 1;
				-ms-filter: "alpha(opacity=100)";
				filter: alpha(opacity=100); }
				.c-btn4__alt a:hover span.is-email {
						background-image: url(img/common/icon_email-white.svg); }
		.c-btn4__alt.is-disabled .anchor {
				background-color: #fff !important;
				color: #3C8CB4 !important; }
				.c-btn4__alt.is-disabled .anchor span.is-email {
						background-image: url(img/common/icon_email-gray.svg) !important; }

.c-btn5 {
		text-align: center;
		margin-top: 60px; }
		.c-btn5 .anchor {
				-webkit-transition: 0.3s ease all;
				-moz-transition: 0.3s ease all;
				-ms-transition: 0.3s ease all;
				transition: 0.3s ease all; }
		.c-btn5 a,
		.c-btn5 .anchor {
				display: inline-block;
				*display: inline;
				*zoom: 1;
				vertical-align: middle;
				background: url(img/common/arrow_2.svg) no-repeat center;
				background-size: contain;
				width: 48px;
				height: 48px;
				text-indent: 100%;
				white-space: nowrap;
				overflow: hidden; }
		.c-btn5 a:hover {
				opacity: 1;
				-ms-filter: "alpha(opacity=100)";
				filter: alpha(opacity=100);
				background-image: url(img/common/arrow_2-alt-white.svg); }
		.c-btn5__alt a,
		.c-btn5__alt .anchor {
				background-image: url(img/common/arrow_2-alt-white.svg); }
		.c-btn5__alt a:hover {
				background-image: url(img/common/arrow_2.svg); }

.c-btn6 {
		text-align: center;
		margin-top: 60px; }
		.c-btn6 .anchor {
				-webkit-transition: 0.3s ease all;
				-moz-transition: 0.3s ease all;
				-ms-transition: 0.3s ease all;
				transition: 0.3s ease all; }
		.c-btn6 a,
		.c-btn6 .anchor {
				display: inline-block;
				*display: inline;
				*zoom: 1;
				vertical-align: middle;
				background: url(img/common/arrow_4.svg) no-repeat center;
				background-size: contain;
				width: 48px;
				height: 48px;
				text-indent: 100%;
				white-space: nowrap;
				overflow: hidden; }
		.c-btn6 a:hover {
				opacity: 1;
				-ms-filter: "alpha(opacity=100)";
				filter: alpha(opacity=100);
				background-image: url(img/common/arrow_4-alt-white.svg); }
		.c-btn6__alt a,
		.c-btn6__alt .anchor {
				background-image: url(img/common/arrow_4-alt-white.svg); }
		.c-btn6__alt a:hover {
				background-image: url(img/common/arrow_4.svg); }

.c-link1 {
		margin-top: 20px; }
		.c-link1 a {
				text-decoration: none; }
		.c-link1 a,
		.c-link1 .anchor {
				display: inline-block;
				*display: inline;
				*zoom: 1;
				background: url(img/common/arrow_1.svg) no-repeat right center;
				background-size: 5px auto;
				padding-right: 14px;
				font-size: 16px;
				font-size: 1.6rem;
				line-height: 140%;
				font-weight: bold;
				color: #3F4BE3; }

.c-link2 {
		margin-top: 30px; }
		.c-link2 a {
				display: inline-block;
				*display: inline;
				*zoom: 1;
				font-size: 16px;
				font-size: 1.6rem;
				line-height: 140%;
				color: #3F4BE3;
				text-decoration: none;
				font-weight: bold;
				background: url(img/common/arrow_2.svg) no-repeat right center;
				background-size: 18px 18px;
				padding-right: 28px; }

.c-link3 {
		margin-top: 30px; }
		.c-link3 a {
				display: inline-block;
				*display: inline;
				*zoom: 1;
				font-size: 16px;
				font-size: 1.6rem;
				line-height: 140%;
				color: #3F4BE3;
				text-decoration: none;
				font-weight: bold;
				background: url(img/common/arrow_2.svg) no-repeat right center;
				background-size: 18px 18px;
				padding-right: 27px; }

.c-link4 {
		margin-top: 20px; }
		.c-link4 a {
				text-decoration: none; }
		.c-link4 a,
		.c-link4 .anchor {
				color: #3F4BE3;
				font-size: 16px;
				font-size: 1.6rem;
				line-height: 140%;
				font-weight: bold; }

.c-link5 a {
		text-decoration: none;
		display: inline-block;
		*display: inline;
		*zoom: 1;
		border-bottom: 1px solid #3F4BE3;
		padding-bottom: 5px;
		font-size: 16px;
		font-size: 1.6rem;
		line-height: 140%;
		font-weight: bold;
		color: #3F4BE3; }

.c-link6 a {
		text-decoration: none;
		display: inline-block;
		*display: inline;
		*zoom: 1;
		border-bottom: 1px solid #3F4BE3;
		padding-bottom: 5px;
		font-size: 16px;
		font-size: 1.6rem;
		line-height: 140%;
		font-weight: bold;
		color: #3F4BE3; }
		.c-link6 a span {
				display: inline-block;
				*display: inline;
				*zoom: 1;
				background: url(img/common/arrow_1.svg) no-repeat right center;
				background-size: 5px auto;
				padding-right: 14px; }

.c-title1 {
		font-size: 42px;
		font-size: 4.2rem;
		font-weight: bold;
		line-height: 147%;
		margin-bottom: 40px; }
		.c-title1__alt {
				color: #fff; }

.c-title2 {
		font-size: 34px;
		font-size: 3.4rem;
		line-height: 130%;
		font-weight: bold;
		margin-bottom: 40px; }
		.c-title2__alt {
				color: #fff; }

.c-titleCombo {
		margin-bottom: 40px; }
		.c-titleCombo > * {
				display: inline-block;
				*display: inline;
				*zoom: 1;
				vertical-align: middle;
				margin-top: 0;
				margin-bottom: 0;
				margin-right: 36px; }
				.c-titleCombo > *:last-child {
						margin-right: 0; }

.c-font1 {
		font-style: italic;
		color: #5B9DBE;
		margin-bottom: 20px; }

.c-font2 {
		font-size: 18px;
		font-size: 1.8rem;
		line-height: 187.5%;
		margin-bottom: 20px; }

.c-font3 {
		margin-bottom: 20px; }

.c-font4 {
		font-size: 12px;
		font-size: 1.2rem;
		line-height: 200%;
		margin-bottom: 20px; }

.c-font5 {
		font-weight: bold;
		font-size: 12px;
		font-size: 1.2rem;
		margin-bottom: 20px;
		line-height: 160%; }

.c-font6 {
		font-size: 11px;
		font-size: 1.1rem;
		line-height: 160%;
		color: #3C8CB4;
		margin-bottom: 20px; }

.c-list1 {
		margin-top: 60px;
		margin-bottom: 60px; }
		.c-list1:last-child {
				margin-bottom: 0; }
		.c-list1 li {
				float: left;
				width: 30%;
				margin-left: 5%; }
				.c-list1 li:nth-child(3n+1) {
						clear: both;
						margin-left: 0; }
				.c-list1 li .img1 {
						text-align: center;
						margin-bottom: 23px; }
				.c-list1 li .title {
						font-size: 26px;
						font-size: 2.6rem;
						line-height: 138%;
						margin-bottom: 20px;
						text-align: center; }
				.c-list1 li .box1 p {
						font-size: 16px;
						font-size: 1.6rem;
						text-align: center; }

.c-list2 {
		margin-top: 60px;
		margin-bottom: 60px;
		padding-left: 28px;
		padding-right: 28px; }
		.c-list2 li {
				margin-bottom: 40px; }
				.c-list2 li:last-child {
						margin-bottom: 0; }
		.c-list2 .img1,
		.c-list2 .box1 {
				display: inline-block;
				*display: inline;
				*zoom: 1;
				vertical-align: middle; }
		.c-list2 .img1 {
				width: 20.7468%;
				margin-right: 4.0458%; }
		.c-list2 .box1 {
				width: 75.2074%; }
				.c-list2 .box1 p {
						font-size: 16px;
						font-size: 1.6rem;
						line-height: 200%; }
		.c-list2 .title {
				font-size: 26px;
				font-size: 2.6rem;
				font-weight: bold;
				line-height: 140%;
				margin-bottom: 20px; }

.c-list3 {
		margin-top: 60px;
		margin-bottom: 60px; }
		.c-list3 li {
				border-bottom: 1px solid #C3C5C6;
				padding-bottom: 24px;
				margin-bottom: 22px; }
				.c-list3 li:last-child {
						border-bottom: 0;
						padding-bottom: 0;
						margin-right: 0; }
				.c-list3 li a {
						display: block;
						text-decoration: none;
						*zoom: 1; }
						.c-list3 li a:after {
								display: block;
								content: "";
								clear: both; }
				.c-list3 li .img1 {
						float: left;
						width: 26.6666%; }
				.c-list3 li .box1 {
						float: right;
						width: 69.6%; }
						.c-list3 li .box1 .c-title3 {
								margin-bottom: 14px;
								font-size: 20px;
								font-size: 2rem; }
						.c-list3 li .box1 p {
								font-size: 16px;
								font-size: 1.6rem;
								line-height: 180%;
								overflow: hidden;
								display: -webkit-box;
								-webkit-box-orient: vertical;
								-webkit-line-clamp: 2; }

.c-list4 li {
		float: left;
		width: 31.3725%;
		margin-left: 2.94125%; }
		.c-list4 li:nth-child(3n+1) {
				clear: both;
				margin-left: 0; }
		.c-list4 li a {
				display: block;
				text-decoration: none; }
		.c-list4 li .img1 {
				margin-bottom: 20px; }
		.c-list4 li .c-tag1,
		.c-list4 li .date {
				display: inline-block;
				*display: inline;
				*zoom: 1;
				vertical-align: middle; }
		.c-list4 li .c-tag1 {
				margin-right: 12px;
				line-height: 100%; }
				.c-list4 li .c-tag1 span {
						margin-bottom: 0;
						margin-right: 0; }
		.c-list4 li .date {
				font-size: 13px;
				font-size: 1.3rem;
				line-height: 140%;
				color: #3C8CB4; }
		.c-list4 li .title {
				font-size: 18px;
				font-size: 1.8rem;
				margin-top: 13px;
				margin-bottom: 10px;
				font-weight: bold;
				overflow: hidden;
				display: -webkit-box;
				-webkit-box-orient: vertical;
				-webkit-line-clamp: 2; }
		.c-list4 li p {
				font-size: 16px;
				font-size: 1.6rem;
				line-height: 180%; }
				.c-list4 li p.txt1 {
						color: #d5d5d5;
						overflow: hidden;
						display: -webkit-box;
						-webkit-box-orient: vertical;
						-webkit-line-clamp: 2; }

.c-list5 li {
		float: left;
		width: 31.3725%;
		margin-left: 2.94125%;
		margin-bottom: 60px; }
		.c-list5 li:nth-child(3n+1) {
				clear: both;
				margin-left: 0; }
		.c-list5 li a {
				display: block;
				text-decoration: none; }
		.c-list5 li .img1 {
				margin-bottom: 18px; }
				.c-list5 li .img1 img {
						border-radius: 10px; }
		.c-list5 li .c-tag1,
		.c-list5 li .date {
				display: inline-block;
				*display: inline;
				*zoom: 1;
				vertical-align: middle; }
		.c-list5 li .c-tag1 {
				margin-right: 12px;
				line-height: 100%; }
				.c-list5 li .c-tag1 span {
						margin-bottom: 0;
						margin-right: 0; }
		.c-list5 li .date {
				font-size: 13px;
				font-size: 1.3rem;
				line-height: 140%;
				color: #3C8CB4; }
		.c-list5 li .title {
				margin-top: 13px;
				font-weight: bold; }
		.c-list5 li p {
				font-size: 12px;
				font-size: 1.2rem;
				line-height: 180%; }

.c-list5__col2 li {
		width: 46.875%;
		margin-left: 6.25%; }
		.c-list5__col2 li:nth-child(3n+1) {
				clear: none;
				margin-left: 6.25%; }
		.c-list5__col2 li:nth-child(2n+1) {
				clear: both;
				margin-left: 0%; }
		.c-list5__col2 li p {
				margin-top: 10px; }

.c-list5 + .c-btn1,
.c-list5 + .c-btn2 {
		margin-top: 0; }

.c-list6 {
		margin-bottom: 60px; }
		.c-list6 li {
				margin-bottom: 12px;
				border-bottom: 1px solid #C3C5C6; }
				.c-list6 li a {
						display: block;
						padding-top: 12px;
						padding-bottom: 12px;
						background: url(img/common/arrow_1.svg) no-repeat right center;
						background-size: 9px auto;
						padding-right: 19px;
						text-decoration: none; }
				.c-list6 li .c-tag1,
				.c-list6 li .date,
				.c-list6 li .title {
						display: inline-block;
						*display: inline;
						*zoom: 1;
						vertical-align: middle; }
				.c-list6 li .c-tag1 {
						margin-right: 20px;
						width: 100px;
						line-height: 100%; }
						.c-list6 li .c-tag1 span {
								width: 100%;
								margin-bottom: 0;
								margin-right: 0;
								padding-left: 1px;
								padding-right: 1px; }
				.c-list6 li .date {
						font-size: 13px;
						font-size: 1.3rem;
						line-height: 140%;
						color: #3C8CB4;
						margin-right: 15px; }
				.c-list6 li .title {
						font-weight: normal;
						max-width: calc(100% - 216px); }
		.c-list6 + .c-btn1,
		.c-list6 + .c-btn2 {
				margin-top: 0; }

.c-list7 {
		margin-bottom: 60px; }
		.c-list7 li {
				margin-bottom: 12px;
				border-bottom: 1px solid #C3C5C6; }
				.c-list7 li a {
						display: block;
						padding-top: 12px;
						padding-bottom: 12px;
						background: url(img/common/arrow_1.svg) no-repeat right center;
						background-size: 9px auto;
						padding-right: 19px;
						text-decoration: none; }

.c-list8 li {
		border-bottom: 1px solid #C3C5C6;
		padding-bottom: 24px;
		margin-bottom: 22px; }
		.c-list8 li:last-child {
				border-bottom: 0;
				padding-bottom: 0;
				margin-right: 0; }
		.c-list8 li a {
				display: block;
				text-decoration: none;
				*zoom: 1; }
				.c-list8 li a:after {
						display: block;
						content: "";
						clear: both; }
		.c-list8 li .img1 {
				float: left;
				width: 31.25%; }
		.c-list8 li .box1 {
				float: right;
				width: 64.375%; }
				.c-list8 li .box1 .c-tag1,
				.c-list8 li .box1 .date {
						display: inline-block;
						*display: inline;
						*zoom: 1;
						vertical-align: middle; }
				.c-list8 li .box1 .c-tag1 {
						margin-right: 14px;
						line-height: 100%; }
						.c-list8 li .box1 .c-tag1 span {
								margin-right: 0;
								margin-bottom: 0;
								min-width: 94px; }
				.c-list8 li .box1 .date {
						font-size: 13px;
						font-size: 1.3rem; }
				.c-list8 li .box1 .title {
						font-size: 18px;
						font-size: 1.8rem;
						font-weight: bold;
						line-height: 166%;
						margin-top: 10px;
						margin-bottom: 8px; }
				.c-list8 li .box1 p {
						font-size: 16px;
						font-size: 1.6rem;
						line-height: 180%; }

.c-card1 a {
		display: block;
		text-decoration: none;
		box-shadow: 0 3px 10px rgba(0, 0, 0, 0.1); }

.c-card1 .box1 {
		padding: 20px; }
		.c-card1 .box1 h3 {
				font-weight: bold;
				margin-bottom: 12px;
				display: -webkit-box;
				-webkit-line-clamp: 2;
				-webkit-box-orient: vertical;
				overflow: hidden; }
		.c-card1 .box1 p {
				color: #d5d5d5;
				font-size: 13px;
				font-size: 1.3rem;
				line-height: 175%; }
				.c-card1 .box1 p.field {
						font-size: 11px;
						font-size: 1.1rem;
						line-height: 140%;
						margin-bottom: 14px; }

.c-tag1 li a,
.c-tag1 span {
		margin-bottom: 14px;
		vertical-align: top;
		font-size: 13px;
		font-size: 1.3rem;
		color: #3F4BE3;
		line-height: 140%;
		border: 1px solid #3F4BE3;
		border-radius: 12px;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
		text-align: center;
		padding: 3px 6px 1px;
		margin-right: 8px; }

.c-tag1 li,
.c-tag1 span {
		display: inline-block;
		*display: inline;
		*zoom: 1; }

.c-tag1 li a {
		display: block;
		text-decoration: none;
		color: #3F4BE3; }
		.c-tag1 li a:last-child {
				margin-bottom: 0; }

.c-map1 {
		margin-bottom: 40px; }
		.c-map1 iframe {
				width: 500px;
				height: 300px;
				max-width: 100%; }

.c-map2 {
		margin-bottom: 40px; }
		.c-map2 iframe {
				width: 700px;
				height: 467px;
				max-width: 100%; }

.c-map3 {
		margin-bottom: 40px; }
		.c-map3 iframe {
				width: 1020px;
				height: 680px;
				max-width: 100%; }

.c-calender1 {
		border: 1px solid #C3C5C6;
		border-radius: 10px;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
		max-width: 600px;
		margin-left: auto;
		margin-right: auto;
		padding: 50px;
		margin-bottom: 60px; }
		.c-calender1 .title {
				font-size: 12px;
				font-size: 1.2rem;
				font-weight: normal;
				line-height: 160%;
				margin-bottom: 12px; }
		.c-calender1-wrap {
				position: relative;
				padding-bottom: 75%;
				height: 0;
				overflow: hidden; }
				.c-calender1-wrap iframe {
						position: absolute;
						top: 0;
						left: 0;
						width: 100% !important;
						height: 100% !important; }

.c-calender2 {
		margin-bottom: 60px; }
		.c-calender2-wrap {
				position: relative;
				padding-bottom: 75%;
				height: 0;
				overflow: hidden; }
				.c-calender2-wrap iframe {
						position: absolute;
						top: 0;
						left: 0;
						width: 100% !important;
						height: 100% !important; }

.c-forminput1 {
		max-width: 340px;
		position: relative; }
		.c-forminput1 input[type="text"],
		.c-forminput1 input[type="email"],
		.c-forminput1 input[type="tel"],
		.c-forminput1 select,
		.c-forminput1 textarea {
				width: 100%;
				-webkit-box-sizing: border-box;
				-moz-box-sizing: border-box;
				box-sizing: border-box;
				border: 1px solid #C3C5C6;
				color: #1C1C1C;
				font-size: 16px;
				font-size: 1.6rem;
				padding: 16px 15px 14px;
				line-height: 160%; }
				.c-forminput1 input[type="text"]:focus,
				.c-forminput1 input[type="email"]:focus,
				.c-forminput1 input[type="tel"]:focus,
				.c-forminput1 select:focus,
				.c-forminput1 textarea:focus {
						border-color: #1C1C1C;
						outline: 0; }
		.c-forminput1.error-input input[type="text"],
		.c-forminput1.error-input input[type="email"],
		.c-forminput1.error-input input[type="tel"],
		.c-forminput1.error-input select,
		.c-forminput1.error-input textarea {
				border-color: #FF0A38;
				background-color: rgba(255, 10, 56, 0.04);
				position: relative; }
				.c-forminput1.error-input input[type="text"]::-webkit-input-placeholder,
				.c-forminput1.error-input input[type="email"]::-webkit-input-placeholder,
				.c-forminput1.error-input input[type="tel"]::-webkit-input-placeholder,
				.c-forminput1.error-input select::-webkit-input-placeholder,
				.c-forminput1.error-input textarea::-webkit-input-placeholder {
						color: #FF0A38; }
				.c-forminput1.error-input input[type="text"]:-ms-input-placeholder,
				.c-forminput1.error-input input[type="email"]:-ms-input-placeholder,
				.c-forminput1.error-input input[type="tel"]:-ms-input-placeholder,
				.c-forminput1.error-input select:-ms-input-placeholder,
				.c-forminput1.error-input textarea:-ms-input-placeholder {
						color: #FF0A38; }
				.c-forminput1.error-input input[type="text"]::-placeholder,
				.c-forminput1.error-input input[type="email"]::-placeholder,
				.c-forminput1.error-input input[type="tel"]::-placeholder,
				.c-forminput1.error-input select::-placeholder,
				.c-forminput1.error-input textarea::-placeholder {
						color: #FF0A38; }
		.c-forminput1.error-input:before {
				display: block;
				content: "";
				position: absolute;
				right: 20px;
				top: 18px;
				width: 16px;
				height: 16px;
				background: url(img/common/icon_error.svg) no-repeat center;
				background-size: 16px 16px; }
		.c-forminput1 .error-message {
				display: block;
				color: #FF0A38;
				font-weight: bold;
				font-size: 12px;
				font-size: 1.2rem;
				line-height: 160%;
				margin-top: 10px; }

.c-check1 {
		font-size: 16px;
		font-size: 1.6rem; }
		.c-check1 label {
				cursor: pointer; }
		.c-check1 input[type="checkbox"] {
				background: #fff;
				vertical-align: middle;
				border: 1px solid #C3C5C6;
				width: 30px;
				height: 30px;
				display: inline-block;
				*display: inline;
				*zoom: 1;
				-webkit-appearance: none; }
				.c-check1 input[type="checkbox"]:checked {
						background: url(img/common/icon_check.svg) no-repeat center;
						background-size: 16px auto; }

.c-radio1 {
		font-size: 12px;
		font-size: 1.2rem; }
		.c-radio1 label {
				cursor: pointer; }
		.c-radio1 input[type="radio"] {
				background: #fff;
				vertical-align: middle;
				border: 1px solid #C3C5C6;
				width: 30px;
				height: 30px;
				display: inline-block;
				*display: inline;
				*zoom: 1;
				-webkit-appearance: none;
				border-radius: 100%; }
				.c-radio1 input[type="radio"]:checked {
						background: url(img/common/icon_check-radio.svg) no-repeat center;
						background-size: 10px 10px; }

.c-spin1 input[type="number"] {
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
		border: 1px solid #C3C5C6;
		color: #1C1C1C;
		font-size: 12px;
		font-size: 1.2rem;
		padding: 16px 15px 14px;
		line-height: 160%; }
		.c-spin1 input[type="number"]:focus {
				border-color: #1C1C1C;
				outline: 0; }

.c-search1 {
		max-width: 340px;
		border: 1px solid #C3C5C6;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box; }
		.c-search1 input {
				display: inline-block;
				*display: inline;
				*zoom: 1;
				vertical-align: middle;
				-webkit-box-sizing: border-box;
				-moz-box-sizing: border-box;
				box-sizing: border-box;
				border: 1px solid #C3C5C6;
				color: #1C1C1C;
				font-size: 12px;
				font-size: 1.2rem;
				padding: 16px 15px 14px;
				line-height: 160%; }
				.c-search1 input[type="text"] {
						width: calc(100% - 50px);
						border: 0;
						outline: 0; }
				.c-search1 input[type="submit"] {
						width: 50px;
						height: 50px;
						background: transparent url(img/common/icon_search.svg) no-repeat center;
						background-size: 15px 15px;
						border: 0;
						outline: 0;
						text-indent: 300%;
						white-space: nowrap;
						overflow: hidden;
						cursor: pointer; }

.c-pulldown1 {
		max-width: 340px;
		border: 1px solid #C3C5C6;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box; }
		.c-pulldown1 input {
				display: inline-block;
				*display: inline;
				*zoom: 1;
				vertical-align: middle;
				-webkit-box-sizing: border-box;
				-moz-box-sizing: border-box;
				box-sizing: border-box;
				border: 1px solid #C3C5C6;
				color: #1C1C1C;
				font-size: 12px;
				font-size: 1.2rem;
				padding: 16px 15px 14px;
				line-height: 160%; }
				.c-pulldown1 input[type="text"] {
						width: calc(100% - 50px);
						border: 0;
						outline: 0; }
				.c-pulldown1 input[type="submit"] {
						width: 50px;
						height: 50px;
						background: transparent url(img/common/icon_search.svg) no-repeat center;
						background-size: 15px 15px;
						border: 0;
						outline: 0;
						text-indent: 300%;
						white-space: nowrap;
						overflow: hidden;
						cursor: pointer; }

.c-dropdown1 {
		max-width: 340px; }
		.c-dropdown1 select {
				display: block;
				width: 100%;
				-webkit-box-sizing: border-box;
				-moz-box-sizing: border-box;
				box-sizing: border-box;
				border: 1px solid #C3C5C6;
				color: #1C1C1C;
				font-size: 12px;
				font-size: 1.2rem;
				padding: 16px 15px 14px;
				line-height: 160%;
				-webkit-apparance: none; }
				.c-dropdown1 select:focus {
						border-color: #1C1C1C;
						outline: 0; }

.c-snsfeed1 {
		text-align: center;
		max-width: 360px;
		margin-left: auto;
		margin-right: auto; }

.c-table1 {
		width: 100%;
		border: 1px solid #707070;
		margin-top: 30px;
		margin-bottom: 30px;
		font-size: 16px;
		font-size: 1.6rem;
		line-height: 180%; }
		.c-table1 th,
		.c-table1 td {
				border-bottom: 1px solid #C3C5C6;
				border-right: 1px solid #C3C5C6;
				padding: 18px 20px;
				-webkit-box-sizing: border-box;
				-moz-box-sizing: border-box;
				box-sizing: border-box; }
				.c-table1 th:last-child,
				.c-table1 td:last-child {
						border-right: 0; }
		.c-table1 th {
				font-weight: normal;
				vertical-align: top;
				text-align: left; }
		.c-table1 tr:last-child th,
		.c-table1 tr:last-child td {
				border-bottom: 0; }
		.c-table1 thead th,
		.c-table1 thead td,
		.c-table1 tbody th {
				background: #F4F4F4; }
		.c-table1 thead th,
		.c-table1 thead td {
				color: #3C8CB4; }
		.c-table1 thead tr:last-child th,
		.c-table1 thead tr:last-child td {
				border-bottom: 2px solid #C3C5C6; }
		.c-table1__fixed th {
				width: 320px; }

.c-table__nostyle {
		width: 100%; }
		.c-table__nostyle th, .c-table__nostyle td {
				padding: 2px 0 !important;
				border: 0;
				font-weight: normal;
				text-align: left;
				vertical-align: top;
				background: transparent; }

.c-tab1__field {
		border-bottom: 1px solid #1C1C1C; }
		.c-tab1__field ul {
				display: table;
				width: 100%;
				table-layout: fixed; }
		.c-tab1__field li {
				display: table-cell;
				width: 100%;
				text-align: center;
				font-size: 20px;
				font-size: 2rem;
				line-height: 160%;
				font-weight: bold;
				-webkit-box-sizing: border-box;
				-moz-box-sizing: border-box;
				box-sizing: border-box;
				border: 1px solid #C3C5C6;
				border-bottom: 0;
				-webkit-transition: 0.3s ease all;
				-moz-transition: 0.3s ease all;
				-ms-transition: 0.3s ease all;
				transition: 0.3s ease all;
				padding: 20px 10px;
				cursor: pointer; }
				.c-tab1__field li:hover, .c-tab1__field li.is-active {
						background: #1C1C1C;
						color: #fff;
						border-color: #1C1C1C; }

.c-tab1__content {
		border: 1px solid #C3C5C6;
		border-top: 0;
		padding: 60px 15px 84px;
		display: none; }
		.c-tab1__content.is-active {
				display: block; }

.c-policy1 {
		max-height: 300px;
		overflow: auto;
		border: 1px solid #C3C5C6;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box; }
		.c-policy1-wrap {
				padding: 20px;
				font-size: 12px;
				font-size: 1.2rem;
				line-height: 150%; }
				.c-policy1-wrap h2,
				.c-policy1-wrap h3,
				.c-policy1-wrap h4,
				.c-policy1-wrap h5,
				.c-policy1-wrap h6 {
						font-weight: normal; }
				.c-policy1-wrap h2,
				.c-policy1-wrap h3,
				.c-policy1-wrap h4,
				.c-policy1-wrap h5,
				.c-policy1-wrap h6,
				.c-policy1-wrap p {
						margin-bottom: 1em; }

.c-accordion1 {
		margin-bottom: 60px; }
		.c-accordion1 dl {
				background: #F4F4F4;
				padding-left: 28px;
				padding-right: 28px;
				margin-bottom: 12px; }
		.c-accordion1 dt {
				cursor: pointer;
				padding-top: 30px;
				padding-bottom: 25px; }
				.c-accordion1 dt .q,
				.c-accordion1 dt .question {
						display: inline-block;
						*display: inline;
						*zoom: 1;
						vertical-align: middle; }
				.c-accordion1 dt .q {
						font-size: 34px;
						font-size: 3.4rem;
						color: #3C8CB4;
						width: 78px; }
				.c-accordion1 dt .question {
						font-size: 16px;
						font-size: 1.6rem;
						font-weight: normal;
						width: calc(100% - 93px);
						padding-right: 30px;
						-webkit-box-sizing: border-box;
						-moz-box-sizing: border-box;
						box-sizing: border-box;
						line-height: 150%;
						background: url(img/common/arrow_1-down.svg) no-repeat right center;
						background-size: 22px auto; }
				.c-accordion1 dt.is-open .question {
						background-image: url(img/common/arrow_1-up.svg); }
		.c-accordion1 dd {
				border-top: 1px solid #C3C5C6;
				padding-top: 24px;
				padding-bottom: 25px;
				display: none; }
				.c-accordion1 dd .a,
				.c-accordion1 dd .answer {
						display: inline-block;
						*display: inline;
						*zoom: 1;
						vertical-align: top; }
				.c-accordion1 dd .a {
						font-size: 34px;
						font-size: 3.4rem;
						color: #3C8CB4;
						width: 78px;
						padding-top: 8px; }
				.c-accordion1 dd .answer {
						width: calc(100% - 78px); }

.c-kv1 {
		background-color: #c0c0c0;
		background-repeat: no-repeat;
		background-position: center;
		background-size: cover;
		color: #fff;
		text-align: center;
		padding-top: 298px;
		padding-bottom: 326px;
		position: relative; }
		.c-kv1:before {
				display: block;
				content: "";
				position: absolute;
				left: 0;
				top: 0;
				width: 100%;
				height: 100%;
				background-color: rgba(51, 51, 51, 0.6);
				z-index: 1; }
		.c-kv1 .title,
		.c-kv1 .txt {
				position: relative;
				z-index: 2; }
		.c-kv1 .title {
				font-size: 60px;
				font-size: 6rem;
				font-weight: bold;
				line-height: 130%;
				margin-bottom: 38px; }
		.c-kv1 .txt {
				line-height: 195%;
				font-weight: normal; }
		.c-kv1__video {
				background-image: none !important; }

.c-kv2 {
		padding-top: 298px;
		padding-bottom: 326px;
		position: relative; }
		.c-kv2:before, .c-kv2:after {
				display: block;
				content: "";
				position: absolute;
				top: 0;
				right: 0;
				width: 70%;
				height: 100%; }
		.c-kv2:before {
				background: url(img/top/kv_img1.jpg) no-repeat center;
				background-size: cover;
				z-index: 1; }
		.c-kv2:after {
				background: rgba(0, 0, 0, 0.6);
				z-index: 2; }
		.c-kv2 .title,
		.c-kv2 .txt {
				position: relative;
				z-index: 3; }
		.c-kv2 .title {
				font-size: 60px;
				font-size: 6rem;
				font-weight: bold;
				line-height: 130%;
				margin-bottom: 38px; }
		.c-kv2 .txt {
				line-height: 195%;
				font-weight: normal; }
		.c-kv2__video:before {
				display: none; }
		.c-kv2__video .mbYTP_wrapper {
				left: auto !important;
				right: 0;
				min-width: 70% !important;
				height: 100%;
				z-index: 1; }

.c-kv3 {
		position: relative;
		padding-top: 298px;
		padding-bottom: 326px;
		margin-bottom: 72px; }
		.c-kv3 .container {
				position: relative;
				z-index: 2; }
		.c-kv3 .title {
				font-size: 60px;
				font-size: 6rem;
				font-weight: bold;
				line-height: 130%;
				margin-bottom: 38px; }
		.c-kv3 .txt {
				line-height: 195%;
				font-weight: normal; }
		.c-kv3__img {
				position: absolute;
				top: 0;
				left: 0;
				width: 100%;
				height: 100%;
				z-index: 1; }
				.c-kv3__img ul {
						height: 100%; }
				.c-kv3__img li {
						height: 100%;
						background-repeat: no-repeat;
						background-position: center;
						background-size: cover; }
						.c-kv3__img li.img1 {
								background-image: url(img/sample/1.jpg); }
						.c-kv3__img li.img2 {
								background-image: url(img/sample/2.jpg); }
						.c-kv3__img li.img3 {
								background-image: url(img/sample/3.jpg); }
				.c-kv3__img .bx-wrapper {
						height: 100%; }
						.c-kv3__img .bx-wrapper .bx-viewport {
								height: 100% !important; }
						.c-kv3__img .bx-wrapper .bx-pager {
								bottom: -57px; }
								.c-kv3__img .bx-wrapper .bx-pager.bx-default-pager a {
										width: 12px;
										height: 12px;
										-webkit-box-sizing: border-box;
										-moz-box-sizing: border-box;
										box-sizing: border-box;
										border-radius: 12px;
										border: 1px solid #3B4043;
										margin-left: 13px;
										margin-right: 13px;
										background: #fff; }
										.c-kv3__img .bx-wrapper .bx-pager.bx-default-pager a.active, .c-kv3__img .bx-wrapper .bx-pager.bx-default-pager a:hover {
												background: #3B4043; }
										.c-kv3__img .bx-wrapper .bx-pager.bx-default-pager a:hover {
												opacity: 1;
												-ms-filter: "alpha(opacity=100)";
												filter: alpha(opacity=100); }

.c-banner1 {
		padding-top: 60px;
		padding-bottom: 60px;
		background: #F4F4F4; }

.c-banner2 {
		padding-top: 60px;
		padding-bottom: 1px;
		background: #F4F4F4; }
		.c-banner2 li {
				float: left;
				width: 46.8627%;
				margin-left: 6.2746%;
				margin-bottom: 6.2746%; }
				.c-banner2 li:nth-child(2n+1) {
						clear: both;
						margin-left: 0; }

.c-banner3 {
		padding-top: 60px;
		padding-bottom: 18px;
		background: #F4F4F4; }
		.c-banner3 li {
				float: left;
				width: 30.5882%;
				margin-left: 4.1177%;
				margin-bottom: 4.1177%; }
				.c-banner3 li:nth-child(3n+1) {
						clear: both;
						margin-left: 0; }

.c-banner4 {
		padding-top: 60px;
		padding-bottom: 30px;
		background: #F4F4F4; }
		.c-banner4 li {
				float: left;
				width: 22.7450%;
				margin-left: 3.0066%;
				margin-bottom: 3.0066%;
				text-align: center; }
				.c-banner4 li:nth-child(4n+1) {
						clear: both;
						margin-left: 0; }

.u-indent {
		text-indent: -1em;
		padding-left: 1em; }

.u-anchor {
		position: relative;
		margin-top: -70px;
		padding-top: 70px; }

.u-googlemap-wrap {
		position: relative;
		padding-bottom: 76.6488%;
		height: 0;
		overflow: hidden; }
		.u-googlemap-wrap iframe,
		.u-googlemap-wrap object,
		.u-googlemap-wrap embed {
				position: absolute;
				top: 0;
				left: 0;
				width: 100%;
				height: 100%; }

.u-youtube-wrap {
		position: relative;
		width: 100%;
		padding-top: 76.1904%; }
		.u-youtube-wrap iframe {
				position: absolute;
				top: 0;
				right: 0;
				width: 100% !important;
				height: 100% !important; }

.c-pagination1 {
		clear: both;
		position: relative;
		color: #302D39;
		text-align: center;
		padding-top: 30px;
		font-size: 16px;
		font-size: 1.6rem; }
		.c-pagination1 span,
		.c-pagination1 a {
				display: inline-block;
				*display: inline;
				*zoom: 1;
				vertical-align: middle;
				text-align: center;
				-webkit-box-sizing: border-box;
				-moz-box-sizing: border-box;
				box-sizing: border-box;
				position: relative;
				margin-left: 16px;
				margin-right: 16px;
				background-color: #fff;
				color: #C3C5C6;
				text-decoration: none; }
				.c-pagination1 span.next, .c-pagination1 span.prev,
				.c-pagination1 a.next,
				.c-pagination1 a.prev {
						background-repeat: no-repeat;
						background-position: center;
						background-color: transparent;
						width: 40px;
						height: 40px;
						background-size: 40px 40px;
						white-space: nowrap;
						overflow: hidden;
						text-indent: 100%; }
						.c-pagination1 span.next:hover, .c-pagination1 span.prev:hover,
						.c-pagination1 a.next:hover,
						.c-pagination1 a.prev:hover {
								box-shadow: none; }
		.c-pagination1 span.dot {
				background-color: transparent; }
				.c-pagination1 span.dot:hover {
						box-shadow: none; }
		.c-pagination1 a.next {
				background-image: url(img/common/arrow_2-alt-white.svg); }
		.c-pagination1 a.prev {
				background-image: url(img/common/arrow_2-left-white.svg); }
		.c-pagination1 span.next {
				background-image: url(img/common/arrow_2-alt-gray.svg); }
		.c-pagination1 span.prev {
				background-image: url(img/common/arrow_2-left-gray.svg); }
		.c-pagination1 span.current,
		.c-pagination1 a.page:hover {
				color: #1C1C1C;
				opacity: 1;
				-ms-filter: "alpha(opacity=100)";
				filter: alpha(opacity=100);
				cursor: pointer; }

.c-pagination2 {
		clear: both;
		position: relative;
		color: #302D39;
		text-align: center;
		padding-top: 30px;
		font-size: 13px;
		font-size: 1.3rem;
		line-height: 130%; }
		.c-pagination2 span,
		.c-pagination2 a {
				display: inline-block;
				*display: inline;
				*zoom: 1;
				vertical-align: middle;
				text-align: center;
				-webkit-box-sizing: border-box;
				-moz-box-sizing: border-box;
				box-sizing: border-box;
				position: relative;
				margin-left: 8px;
				margin-right: 8px;
				padding: 4px 0 2px;
				width: 24px;
				background-color: #fff;
				border: 1px solid #C3C5C6;
				color: #C3C5C6;
				text-decoration: none; }
				.c-pagination2 span.next, .c-pagination2 span.prev,
				.c-pagination2 a.next,
				.c-pagination2 a.prev {
						background-repeat: no-repeat;
						background-position: center;
						background-color: transparent;
						border: 0;
						width: 20px;
						height: 24px;
						background-size: 8px auto;
						white-space: nowrap;
						overflow: hidden;
						text-indent: 100%; }
						.c-pagination2 span.next:hover, .c-pagination2 span.prev:hover,
						.c-pagination2 a.next:hover,
						.c-pagination2 a.prev:hover {
								box-shadow: none; }
		.c-pagination2 span.dot {
				background-color: transparent;
				border: 0; }
				.c-pagination2 span.dot:hover {
						box-shadow: none; }
		.c-pagination2 a.next {
				background-image: url(img/common/arrow_1.svg); }
		.c-pagination2 a.prev {
				background-image: url(img/common/arrow_1-left.svg); }
		.c-pagination2 span.next {
				background-image: url(img/common/arrow_1-gray.svg); }
		.c-pagination2 span.prev {
				background-image: url(img/common/arrow_1-left-gray.svg); }
		.c-pagination2 span.current,
		.c-pagination2 a.page:hover {
				color: #fff;
				background: #3F4BE3;
				border-color: #3F4BE3;
				opacity: 1;
				-ms-filter: "alpha(opacity=100)";
				filter: alpha(opacity=100);
				cursor: pointer; }

.c-pagination3 {
		clear: both;
		position: relative;
		color: #302D39;
		text-align: center;
		padding-top: 30px;
		font-size: 13px;
		font-size: 1.3rem;
		line-height: 130%; }
		.c-pagination3 span,
		.c-pagination3 a {
				display: inline-block;
				*display: inline;
				*zoom: 1;
				vertical-align: middle;
				text-align: center;
				-webkit-box-sizing: border-box;
				-moz-box-sizing: border-box;
				box-sizing: border-box;
				position: relative;
				margin-left: 10px;
				margin-right: 10px;
				padding: 4px 2px 2px;
				border-bottom: 1px solid #fff;
				color: #C3C5C6;
				text-decoration: none; }
				.c-pagination3 span.next, .c-pagination3 span.prev,
				.c-pagination3 a.next,
				.c-pagination3 a.prev {
						background-repeat: no-repeat;
						background-color: transparent;
						border: 0;
						background-size: 18px auto; }
						.c-pagination3 span.next:hover, .c-pagination3 span.prev:hover,
						.c-pagination3 a.next:hover,
						.c-pagination3 a.prev:hover {
								box-shadow: none; }
		.c-pagination3 span.dot {
				background-color: transparent;
				border: 0; }
				.c-pagination3 span.dot:hover {
						box-shadow: none; }
		.c-pagination3 a.next {
				color: #3F4BE3;
				padding-right: 25px;
				background-image: url(img/common/arrow_3-blue.svg);
				background-position: right center; }
		.c-pagination3 a.prev {
				color: #3F4BE3;
				padding-left: 25px;
				background-image: url(img/common/arrow_3-left-blue.svg);
				background-position: left center; }
		.c-pagination3 span.next {
				padding-right: 25px;
				background-image: url(img/common/arrow_3-gray.svg);
				background-position: right center; }
		.c-pagination3 span.prev {
				padding-left: 25px;
				background-image: url(img/common/arrow_3-left-gray.svg);
				background-position: left center; }
		.c-pagination3 span.current,
		.c-pagination3 a.page:hover {
				color: #3F4BE3;
				border-bottom-color: #3F4BE3;
				opacity: 1;
				-ms-filter: "alpha(opacity=100)";
				filter: alpha(opacity=100);
				cursor: pointer; }

.mfp-bg {
		background: #1C1C1C !important; }

.mfp-close {
		width: 20px !important;
		height: 20px !important;
		background: url(img/common/icon_close.svg) no-repeat center !important;
		background-size: 20px 20px !important;
		text-indent: 200%;
		overflow: hidden !important;
		white-space: nowrap;
		right: 0 !important;
		opacity: 1 !important; }

/* フェードインしながら少し上へ */
@-webkit-keyframes fadeInUp {
		0% {
				opacity: 0;
				-webkit-transform: translateY(20px); }
		100% {
				opacity: 1;
				-webkit-transform: translateY(0); } }

@-moz-keyframes fadeInUp {
		0% {
				opacity: 0;
				-moz-transform: translateY(20px); }
		100% {
				opacity: 1;
				-moz-transform: translateY(0); } }

@-ms-keyframes fadeInUp {
		0% {
				opacity: 0;
				-ms-transform: translateY(20px); }
		100% {
				opacity: 1;
				-ms-transform: translateY(0); } }

@-o-keyframes fadeInUp {
		0% {
				opacity: 0;
				-o-transform: translateY(20px); }
		100% {
				opacity: 1;
				-o-transform: translateY(0); } }

@keyframes fadeInUp {
		0% {
				opacity: 0;
				transform: translateY(20px); }
		100% {
				opacity: 1;
				transform: translateY(0); } }

.js-animate,
.js-x-animate {
		opacity: 0;
		-ms-filter: "alpha(opacity=0)";
		filter: alpha(opacity=0); }
		.js-animate.is--animate,
		.js-x-animate.is--animate {
				-webkit-animation: fadeInUp 0.8s 1 ease-in-out;
				-moz-animation: fadeInUp 0.8s 1 ease-in-out;
				-ms-animation: fadeInUp 0.8s 1 ease-in-out;
				animation: fadeInUp 0.8s 1 ease-in-out;
				-webkit-animation-fill-mode: backwards;
				-moz-animation-fill-mode: backwards;
				-ms-animation-fill-mode: backwards;
				animation-fill-mode: backwards;
				opacity: 1;
				-ms-filter: "alpha(opacity=100)";
				filter: alpha(opacity=100); }
		.js-animate--delay1,
		.js-x-animate--delay1 {
				-webkit-animation-delay: 0.1s !important;
				-moz-animation-delay: 0.1s !important;
				-ms-animation-delay: 0.1s !important;
				animation-delay: 0.1s !important; }
		.js-animate--delay2,
		.js-x-animate--delay2 {
				-webkit-animation-delay: 0.2s !important;
				-moz-animation-delay: 0.2s !important;
				-ms-animation-delay: 0.2s !important;
				animation-delay: 0.2s !important; }
		.js-animate--delay3,
		.js-x-animate--delay3 {
				-webkit-animation-delay: 0.3s !important;
				-moz-animation-delay: 0.3s !important;
				-ms-animation-delay: 0.3s !important;
				animation-delay: 0.3s !important; }
		.js-animate--delay4,
		.js-x-animate--delay4 {
				-webkit-animation-delay: 0.4s !important;
				-moz-animation-delay: 0.4s !important;
				-ms-animation-delay: 0.4s !important;
				animation-delay: 0.4s !important; }
		.js-animate--delay5,
		.js-x-animate--delay5 {
				-webkit-animation-delay: 0.5s !important;
				-moz-animation-delay: 0.5s !important;
				-ms-animation-delay: 0.5s !important;
				animation-delay: 0.5s !important; }
		.js-animate--delay6,
		.js-x-animate--delay6 {
				-webkit-animation-delay: 0.6s !important;
				-moz-animation-delay: 0.6s !important;
				-ms-animation-delay: 0.6s !important;
				animation-delay: 0.6s !important; }
		.js-animate--delay7,
		.js-x-animate--delay7 {
				-webkit-animation-delay: 0.7s !important;
				-moz-animation-delay: 0.7s !important;
				-ms-animation-delay: 0.7s !important;
				animation-delay: 0.7s !important; }
		.js-animate--delay8,
		.js-x-animate--delay8 {
				-webkit-animation-delay: 0.8s !important;
				-moz-animation-delay: 0.8s !important;
				-ms-animation-delay: 0.8s !important;
				animation-delay: 0.8s !important; }
		.js-animate--delay9,
		.js-x-animate--delay9 {
				-webkit-animation-delay: 0.9s !important;
				-moz-animation-delay: 0.9s !important;
				-ms-animation-delay: 0.9s !important;
				animation-delay: 0.9s !important; }
		.js-animate--delay10,
		.js-x-animate--delay10 {
				-webkit-animation-delay: 1s !important;
				-moz-animation-delay: 1s !important;
				-ms-animation-delay: 1s !important;
				animation-delay: 1s !important; }
		.js-animate--delay11,
		.js-x-animate--delay11 {
				-webkit-animation-delay: 1.1s !important;
				-moz-animation-delay: 1.1s !important;
				-ms-animation-delay: 1.1s !important;
				animation-delay: 1.1s !important; }
		.js-animate--delay12,
		.js-x-animate--delay12 {
				-webkit-animation-delay: 1.2s !important;
				-moz-animation-delay: 1.2s !important;
				-ms-animation-delay: 1.2s !important;
				animation-delay: 1.2s !important; }
		.js-animate--delay13,
		.js-x-animate--delay13 {
				-webkit-animation-delay: 1.3s !important;
				-moz-animation-delay: 1.3s !important;
				-ms-animation-delay: 1.3s !important;
				animation-delay: 1.3s !important; }
		.js-animate--delay14,
		.js-x-animate--delay14 {
				-webkit-animation-delay: 1.4s !important;
				-moz-animation-delay: 1.4s !important;
				-ms-animation-delay: 1.4s !important;
				animation-delay: 1.4s !important; }
		.js-animate--delay15,
		.js-x-animate--delay15 {
				-webkit-animation-delay: 1.5s !important;
				-moz-animation-delay: 1.5s !important;
				-ms-animation-delay: 1.5s !important;
				animation-delay: 1.5s !important; }
		.js-animate--delay16,
		.js-x-animate--delay16 {
				-webkit-animation-delay: 1.6s !important;
				-moz-animation-delay: 1.6s !important;
				-ms-animation-delay: 1.6s !important;
				animation-delay: 1.6s !important; }
		.js-animate--delay17,
		.js-x-animate--delay17 {
				-webkit-animation-delay: 1.7s !important;
				-moz-animation-delay: 1.7s !important;
				-ms-animation-delay: 1.7s !important;
				animation-delay: 1.7s !important; }
		.js-animate--delay18,
		.js-x-animate--delay18 {
				-webkit-animation-delay: 1.8s !important;
				-moz-animation-delay: 1.8s !important;
				-ms-animation-delay: 1.8s !important;
				animation-delay: 1.8s !important; }
		.js-animate--delay19,
		.js-x-animate--delay19 {
				-webkit-animation-delay: 1.9s !important;
				-moz-animation-delay: 1.9s !important;
				-ms-animation-delay: 1.9s !important;
				animation-delay: 1.9s !important; }
		.js-animate--delay20,
		.js-x-animate--delay20 {
				-webkit-animation-delay: 2s !important;
				-moz-animation-delay: 2s !important;
				-ms-animation-delay: 2s !important;
				animation-delay: 2s !important; }
		.js-animate--delay21,
		.js-x-animate--delay21 {
				-webkit-animation-delay: 2.1s !important;
				-moz-animation-delay: 2.1s !important;
				-ms-animation-delay: 2.1s !important;
				animation-delay: 2.1s !important; }
		.js-animate--delay22,
		.js-x-animate--delay22 {
				-webkit-animation-delay: 2.2s !important;
				-moz-animation-delay: 2.2s !important;
				-ms-animation-delay: 2.2s !important;
				animation-delay: 2.2s !important; }
		.js-animate--delay23,
		.js-x-animate--delay23 {
				-webkit-animation-delay: 2.3s !important;
				-moz-animation-delay: 2.3s !important;
				-ms-animation-delay: 2.3s !important;
				animation-delay: 2.3s !important; }
		.js-animate--delay24,
		.js-x-animate--delay24 {
				-webkit-animation-delay: 2.4s !important;
				-moz-animation-delay: 2.4s !important;
				-ms-animation-delay: 2.4s !important;
				animation-delay: 2.4s !important; }
		.js-animate--delay25,
		.js-x-animate--delay25 {
				-webkit-animation-delay: 2.5s !important;
				-moz-animation-delay: 2.5s !important;
				-ms-animation-delay: 2.5s !important;
				animation-delay: 2.5s !important; }
		.js-animate--delay26,
		.js-x-animate--delay26 {
				-webkit-animation-delay: 2.6s !important;
				-moz-animation-delay: 2.6s !important;
				-ms-animation-delay: 2.6s !important;
				animation-delay: 2.6s !important; }
		.js-animate--delay27,
		.js-x-animate--delay27 {
				-webkit-animation-delay: 2.7s !important;
				-moz-animation-delay: 2.7s !important;
				-ms-animation-delay: 2.7s !important;
				animation-delay: 2.7s !important; }
		.js-animate--delay28,
		.js-x-animate--delay28 {
				-webkit-animation-delay: 2.8s !important;
				-moz-animation-delay: 2.8s !important;
				-ms-animation-delay: 2.8s !important;
				animation-delay: 2.8s !important; }
		.js-animate--delay29,
		.js-x-animate--delay29 {
				-webkit-animation-delay: 2.9s !important;
				-moz-animation-delay: 2.9s !important;
				-ms-animation-delay: 2.9s !important;
				animation-delay: 2.9s !important; }
		.js-animate--delay30,
		.js-x-animate--delay30 {
				-webkit-animation-delay: 3s !important;
				-moz-animation-delay: 3s !important;
				-ms-animation-delay: 3s !important;
				animation-delay: 3s !important; }
		.js-animate--delay31,
		.js-x-animate--delay31 {
				-webkit-animation-delay: 3.1s !important;
				-moz-animation-delay: 3.1s !important;
				-ms-animation-delay: 3.1s !important;
				animation-delay: 3.1s !important; }
		.js-animate--delay32,
		.js-x-animate--delay32 {
				-webkit-animation-delay: 3.2s !important;
				-moz-animation-delay: 3.2s !important;
				-ms-animation-delay: 3.2s !important;
				animation-delay: 3.2s !important; }
		.js-animate--delay33,
		.js-x-animate--delay33 {
				-webkit-animation-delay: 3.3s !important;
				-moz-animation-delay: 3.3s !important;
				-ms-animation-delay: 3.3s !important;
				animation-delay: 3.3s !important; }
		.js-animate--delay34,
		.js-x-animate--delay34 {
				-webkit-animation-delay: 3.4s !important;
				-moz-animation-delay: 3.4s !important;
				-ms-animation-delay: 3.4s !important;
				animation-delay: 3.4s !important; }
		.js-animate--delay35,
		.js-x-animate--delay35 {
				-webkit-animation-delay: 3.5s !important;
				-moz-animation-delay: 3.5s !important;
				-ms-animation-delay: 3.5s !important;
				animation-delay: 3.5s !important; }
		.js-animate--delay36,
		.js-x-animate--delay36 {
				-webkit-animation-delay: 3.6s !important;
				-moz-animation-delay: 3.6s !important;
				-ms-animation-delay: 3.6s !important;
				animation-delay: 3.6s !important; }
		.js-animate--delay37,
		.js-x-animate--delay37 {
				-webkit-animation-delay: 3.7s !important;
				-moz-animation-delay: 3.7s !important;
				-ms-animation-delay: 3.7s !important;
				animation-delay: 3.7s !important; }
		.js-animate--delay38,
		.js-x-animate--delay38 {
				-webkit-animation-delay: 3.8s !important;
				-moz-animation-delay: 3.8s !important;
				-ms-animation-delay: 3.8s !important;
				animation-delay: 3.8s !important; }
		.js-animate--delay39,
		.js-x-animate--delay39 {
				-webkit-animation-delay: 3.9s !important;
				-moz-animation-delay: 3.9s !important;
				-ms-animation-delay: 3.9s !important;
				animation-delay: 3.9s !important; }
		.js-animate--delay40,
		.js-x-animate--delay40 {
				-webkit-animation-delay: 4s !important;
				-moz-animation-delay: 4s !important;
				-ms-animation-delay: 4s !important;
				animation-delay: 4s !important; }
		.js-animate--duration1,
		.js-x-animate--duration1 {
				-webkit-animation-duration: 0.1s !important;
				-moz-animation-duration: 0.1s !important;
				-ms-animation-duration: 0.1s !important;
				animation-duration: 0.1s !important; }
		.js-animate--duration2,
		.js-x-animate--duration2 {
				-webkit-animation-duration: 0.2s !important;
				-moz-animation-duration: 0.2s !important;
				-ms-animation-duration: 0.2s !important;
				animation-duration: 0.2s !important; }
		.js-animate--duration3,
		.js-x-animate--duration3 {
				-webkit-animation-duration: 0.3s !important;
				-moz-animation-duration: 0.3s !important;
				-ms-animation-duration: 0.3s !important;
				animation-duration: 0.3s !important; }
		.js-animate--duration4,
		.js-x-animate--duration4 {
				-webkit-animation-duration: 0.4s !important;
				-moz-animation-duration: 0.4s !important;
				-ms-animation-duration: 0.4s !important;
				animation-duration: 0.4s !important; }
		.js-animate--duration5,
		.js-x-animate--duration5 {
				-webkit-animation-duration: 0.5s !important;
				-moz-animation-duration: 0.5s !important;
				-ms-animation-duration: 0.5s !important;
				animation-duration: 0.5s !important; }
		.js-animate--duration6,
		.js-x-animate--duration6 {
				-webkit-animation-duration: 0.6s !important;
				-moz-animation-duration: 0.6s !important;
				-ms-animation-duration: 0.6s !important;
				animation-duration: 0.6s !important; }
		.js-animate--duration7,
		.js-x-animate--duration7 {
				-webkit-animation-duration: 0.7s !important;
				-moz-animation-duration: 0.7s !important;
				-ms-animation-duration: 0.7s !important;
				animation-duration: 0.7s !important; }
		.js-animate--duration8,
		.js-x-animate--duration8 {
				-webkit-animation-duration: 0.8s !important;
				-moz-animation-duration: 0.8s !important;
				-ms-animation-duration: 0.8s !important;
				animation-duration: 0.8s !important; }
		.js-animate--duration9,
		.js-x-animate--duration9 {
				-webkit-animation-duration: 0.9s !important;
				-moz-animation-duration: 0.9s !important;
				-ms-animation-duration: 0.9s !important;
				animation-duration: 0.9s !important; }
		.js-animate--duration10,
		.js-x-animate--duration10 {
				-webkit-animation-duration: 1s !important;
				-moz-animation-duration: 1s !important;
				-ms-animation-duration: 1s !important;
				animation-duration: 1s !important; }
		.js-animate--duration11,
		.js-x-animate--duration11 {
				-webkit-animation-duration: 1.1s !important;
				-moz-animation-duration: 1.1s !important;
				-ms-animation-duration: 1.1s !important;
				animation-duration: 1.1s !important; }
		.js-animate--duration12,
		.js-x-animate--duration12 {
				-webkit-animation-duration: 1.2s !important;
				-moz-animation-duration: 1.2s !important;
				-ms-animation-duration: 1.2s !important;
				animation-duration: 1.2s !important; }
		.js-animate--duration13,
		.js-x-animate--duration13 {
				-webkit-animation-duration: 1.3s !important;
				-moz-animation-duration: 1.3s !important;
				-ms-animation-duration: 1.3s !important;
				animation-duration: 1.3s !important; }
		.js-animate--duration14,
		.js-x-animate--duration14 {
				-webkit-animation-duration: 1.4s !important;
				-moz-animation-duration: 1.4s !important;
				-ms-animation-duration: 1.4s !important;
				animation-duration: 1.4s !important; }
		.js-animate--duration15,
		.js-x-animate--duration15 {
				-webkit-animation-duration: 1.5s !important;
				-moz-animation-duration: 1.5s !important;
				-ms-animation-duration: 1.5s !important;
				animation-duration: 1.5s !important; }
		.js-animate--duration16,
		.js-x-animate--duration16 {
				-webkit-animation-duration: 1.6s !important;
				-moz-animation-duration: 1.6s !important;
				-ms-animation-duration: 1.6s !important;
				animation-duration: 1.6s !important; }
		.js-animate--duration17,
		.js-x-animate--duration17 {
				-webkit-animation-duration: 1.7s !important;
				-moz-animation-duration: 1.7s !important;
				-ms-animation-duration: 1.7s !important;
				animation-duration: 1.7s !important; }
		.js-animate--duration18,
		.js-x-animate--duration18 {
				-webkit-animation-duration: 1.8s !important;
				-moz-animation-duration: 1.8s !important;
				-ms-animation-duration: 1.8s !important;
				animation-duration: 1.8s !important; }
		.js-animate--duration19,
		.js-x-animate--duration19 {
				-webkit-animation-duration: 1.9s !important;
				-moz-animation-duration: 1.9s !important;
				-ms-animation-duration: 1.9s !important;
				animation-duration: 1.9s !important; }
		.js-animate--duration20,
		.js-x-animate--duration20 {
				-webkit-animation-duration: 2s !important;
				-moz-animation-duration: 2s !important;
				-ms-animation-duration: 2s !important;
				animation-duration: 2s !important; }
		.js-animate--duration21,
		.js-x-animate--duration21 {
				-webkit-animation-duration: 2.1s !important;
				-moz-animation-duration: 2.1s !important;
				-ms-animation-duration: 2.1s !important;
				animation-duration: 2.1s !important; }
		.js-animate--duration22,
		.js-x-animate--duration22 {
				-webkit-animation-duration: 2.2s !important;
				-moz-animation-duration: 2.2s !important;
				-ms-animation-duration: 2.2s !important;
				animation-duration: 2.2s !important; }
		.js-animate--duration23,
		.js-x-animate--duration23 {
				-webkit-animation-duration: 2.3s !important;
				-moz-animation-duration: 2.3s !important;
				-ms-animation-duration: 2.3s !important;
				animation-duration: 2.3s !important; }
		.js-animate--duration24,
		.js-x-animate--duration24 {
				-webkit-animation-duration: 2.4s !important;
				-moz-animation-duration: 2.4s !important;
				-ms-animation-duration: 2.4s !important;
				animation-duration: 2.4s !important; }
		.js-animate--duration25,
		.js-x-animate--duration25 {
				-webkit-animation-duration: 2.5s !important;
				-moz-animation-duration: 2.5s !important;
				-ms-animation-duration: 2.5s !important;
				animation-duration: 2.5s !important; }
		.js-animate--duration26,
		.js-x-animate--duration26 {
				-webkit-animation-duration: 2.6s !important;
				-moz-animation-duration: 2.6s !important;
				-ms-animation-duration: 2.6s !important;
				animation-duration: 2.6s !important; }
		.js-animate--duration27,
		.js-x-animate--duration27 {
				-webkit-animation-duration: 2.7s !important;
				-moz-animation-duration: 2.7s !important;
				-ms-animation-duration: 2.7s !important;
				animation-duration: 2.7s !important; }
		.js-animate--duration28,
		.js-x-animate--duration28 {
				-webkit-animation-duration: 2.8s !important;
				-moz-animation-duration: 2.8s !important;
				-ms-animation-duration: 2.8s !important;
				animation-duration: 2.8s !important; }
		.js-animate--duration29,
		.js-x-animate--duration29 {
				-webkit-animation-duration: 2.9s !important;
				-moz-animation-duration: 2.9s !important;
				-ms-animation-duration: 2.9s !important;
				animation-duration: 2.9s !important; }
		.js-animate--duration30,
		.js-x-animate--duration30 {
				-webkit-animation-duration: 3s !important;
				-moz-animation-duration: 3s !important;
				-ms-animation-duration: 3s !important;
				animation-duration: 3s !important; }
		.js-animate--duration31,
		.js-x-animate--duration31 {
				-webkit-animation-duration: 3.1s !important;
				-moz-animation-duration: 3.1s !important;
				-ms-animation-duration: 3.1s !important;
				animation-duration: 3.1s !important; }
		.js-animate--duration32,
		.js-x-animate--duration32 {
				-webkit-animation-duration: 3.2s !important;
				-moz-animation-duration: 3.2s !important;
				-ms-animation-duration: 3.2s !important;
				animation-duration: 3.2s !important; }
		.js-animate--duration33,
		.js-x-animate--duration33 {
				-webkit-animation-duration: 3.3s !important;
				-moz-animation-duration: 3.3s !important;
				-ms-animation-duration: 3.3s !important;
				animation-duration: 3.3s !important; }
		.js-animate--duration34,
		.js-x-animate--duration34 {
				-webkit-animation-duration: 3.4s !important;
				-moz-animation-duration: 3.4s !important;
				-ms-animation-duration: 3.4s !important;
				animation-duration: 3.4s !important; }
		.js-animate--duration35,
		.js-x-animate--duration35 {
				-webkit-animation-duration: 3.5s !important;
				-moz-animation-duration: 3.5s !important;
				-ms-animation-duration: 3.5s !important;
				animation-duration: 3.5s !important; }
		.js-animate--duration36,
		.js-x-animate--duration36 {
				-webkit-animation-duration: 3.6s !important;
				-moz-animation-duration: 3.6s !important;
				-ms-animation-duration: 3.6s !important;
				animation-duration: 3.6s !important; }
		.js-animate--duration37,
		.js-x-animate--duration37 {
				-webkit-animation-duration: 3.7s !important;
				-moz-animation-duration: 3.7s !important;
				-ms-animation-duration: 3.7s !important;
				animation-duration: 3.7s !important; }
		.js-animate--duration38,
		.js-x-animate--duration38 {
				-webkit-animation-duration: 3.8s !important;
				-moz-animation-duration: 3.8s !important;
				-ms-animation-duration: 3.8s !important;
				animation-duration: 3.8s !important; }
		.js-animate--duration39,
		.js-x-animate--duration39 {
				-webkit-animation-duration: 3.9s !important;
				-moz-animation-duration: 3.9s !important;
				-ms-animation-duration: 3.9s !important;
				animation-duration: 3.9s !important; }
		.js-animate--duration40,
		.js-x-animate--duration40 {
				-webkit-animation-duration: 4s !important;
				-moz-animation-duration: 4s !important;
				-ms-animation-duration: 4s !important;
				animation-duration: 4s !important; }

/* フェードインしながら少し右へ */
@-webkit-keyframes fadeInRight {
		0% {
				opacity: 0;
				-webkit-transform: translateX(-20px); }
		100% {
				opacity: 1;
				-webkit-transform: translateX(0); } }

@-moz-keyframes fadeInRight {
		0% {
				opacity: 0;
				-moz-transform: translateX(-20px); }
		100% {
				opacity: 1;
				-moz-transform: translateX(0); } }

@-ms-keyframes fadeInRight {
		0% {
				opacity: 0;
				-ms-transform: translateX(-20px); }
		100% {
				opacity: 1;
				-ms-transform: translateX(0); } }

@-o-keyframes fadeInRight {
		0% {
				opacity: 0;
				-o-transform: translateX(-20px); }
		100% {
				opacity: 1;
				-o-transform: translateX(0); } }

@keyframes fadeInRight {
		0% {
				opacity: 0;
				transform: translateX(-20px); }
		100% {
				opacity: 1;
				transform: translateX(0); } }

.js-animateFadeInRight,
.js-x-animateFadeInRight {
		opacity: 0;
		-ms-filter: "alpha(opacity=0)";
		filter: alpha(opacity=0); }
		.js-animateFadeInRight.is--animate,
		.js-x-animateFadeInRight.is--animate {
				-webkit-animation: fadeInRight 0.8s 1 ease-in-out;
				-moz-animation: fadeInRight 0.8s 1 ease-in-out;
				-ms-animation: fadeInRight 0.8s 1 ease-in-out;
				animation: fadeInRight 0.8s 1 ease-in-out;
				-webkit-animation-fill-mode: backwards;
				-moz-animation-fill-mode: backwards;
				-ms-animation-fill-mode: backwards;
				animation-fill-mode: backwards;
				opacity: 1;
				-ms-filter: "alpha(opacity=100)";
				filter: alpha(opacity=100); }

/* フェードインしながら少し右へ */
@-webkit-keyframes fadeInRight2 {
		0% {
				opacity: 0;
				-webkit-transform: translateX(-80%); }
		100% {
				opacity: 1;
				-webkit-transform: translateX(0); } }

@-moz-keyframes fadeInRight2 {
		0% {
				opacity: 0;
				-moz-transform: translateX(-80%); }
		100% {
				opacity: 1;
				-moz-transform: translateX(0); } }

@-ms-keyframes fadeInRight2 {
		0% {
				opacity: 0;
				-ms-transform: translateX(-80%); }
		100% {
				opacity: 1;
				-ms-transform: translateX(0); } }

@-o-keyframes fadeInRight2 {
		0% {
				opacity: 0;
				-o-transform: translateX(-80%); }
		100% {
				opacity: 1;
				-o-transform: translateX(0); } }

@keyframes fadeInRight2 {
		0% {
				opacity: 0;
				transform: translateX(-80%); }
		100% {
				opacity: 1;
				transform: translateX(0); } }

.js-animateFadeInRight2,
.js-x-animateFadeInRight2 {
		opacity: 0;
		-ms-filter: "alpha(opacity=0)";
		filter: alpha(opacity=0); }
		.js-animateFadeInRight2.is--animate,
		.js-x-animateFadeInRight2.is--animate {
				-webkit-animation: fadeInRight2 0.8s 1 ease-in-out;
				-moz-animation: fadeInRight2 0.8s 1 ease-in-out;
				-ms-animation: fadeInRight2 0.8s 1 ease-in-out;
				animation: fadeInRight2 0.8s 1 ease-in-out;
				-webkit-animation-fill-mode: backwards;
				-moz-animation-fill-mode: backwards;
				-ms-animation-fill-mode: backwards;
				animation-fill-mode: backwards;
				opacity: 1;
				-ms-filter: "alpha(opacity=100)";
				filter: alpha(opacity=100); }

/* フェードインしながら少し左へ */
@-webkit-keyframes fadeInLeft {
		0% {
				opacity: 0;
				-webkit-transform: translateX(20px); }
		100% {
				opacity: 1;
				-webkit-transform: translateX(0); } }

@-moz-keyframes fadeInLeft {
		0% {
				opacity: 0;
				-moz-transform: translateX(20px); }
		100% {
				opacity: 1;
				-moz-transform: translateX(0); } }

@-ms-keyframes fadeInLeft {
		0% {
				opacity: 0;
				-ms-transform: translateX(20px); }
		100% {
				opacity: 1;
				-ms-transform: translateX(0); } }

@-o-keyframes fadeInLeft {
		0% {
				opacity: 0;
				-o-transform: translateX(20px); }
		100% {
				opacity: 1;
				-o-transform: translateX(0); } }

@keyframes fadeInLeft {
		0% {
				opacity: 0;
				transform: translateX(20px); }
		100% {
				opacity: 1;
				transform: translateX(0); } }

.js-animateFadeInLeft,
.js-x-animateFadeInLeft {
		opacity: 0;
		-ms-filter: "alpha(opacity=0)";
		filter: alpha(opacity=0); }
		.js-animateFadeInLeft.is--animate,
		.js-x-animateFadeInLeft.is--animate {
				-webkit-animation: fadeInLeft 0.8s 1 ease-in-out;
				-moz-animation: fadeInLeft 0.8s 1 ease-in-out;
				-ms-animation: fadeInLeft 0.8s 1 ease-in-out;
				animation: fadeInLeft 0.8s 1 ease-in-out;
				-webkit-animation-fill-mode: backwards;
				-moz-animation-fill-mode: backwards;
				-ms-animation-fill-mode: backwards;
				animation-fill-mode: backwards;
				opacity: 1;
				-ms-filter: "alpha(opacity=100)";
				filter: alpha(opacity=100); }

/* フェードインしながら少し左へ */
@-webkit-keyframes fadeInLeft2 {
		0% {
				opacity: 0;
				-webkit-transform: translateX(80%); }
		100% {
				opacity: 1;
				-webkit-transform: translateX(0); } }

@-moz-keyframes fadeInLeft2 {
		0% {
				opacity: 0;
				-moz-transform: translateX(80%); }
		100% {
				opacity: 1;
				-moz-transform: translateX(0); } }

@-ms-keyframes fadeInLeft2 {
		0% {
				opacity: 0;
				-ms-transform: translateX(80%); }
		100% {
				opacity: 1;
				-ms-transform: translateX(0); } }

@-o-keyframes fadeInLeft2 {
		0% {
				opacity: 0;
				-o-transform: translateX(80%); }
		100% {
				opacity: 1;
				-o-transform: translateX(0); } }

@keyframes fadeInLeft2 {
		0% {
				opacity: 0;
				transform: translateX(80%); }
		100% {
				opacity: 1;
				transform: translateX(0); } }

.js-animateFadeInLeft2,
.js-x-animateFadeInLeft2 {
		opacity: 0;
		-ms-filter: "alpha(opacity=0)";
		filter: alpha(opacity=0); }
		.js-animateFadeInLeft2.is--animate,
		.js-x-animateFadeInLeft2.is--animate {
				-webkit-animation: fadeInLeft2 0.8s 1 ease-in-out;
				-moz-animation: fadeInLeft2 0.8s 1 ease-in-out;
				-ms-animation: fadeInLeft2 0.8s 1 ease-in-out;
				animation: fadeInLeft2 0.8s 1 ease-in-out;
				-webkit-animation-fill-mode: backwards;
				-moz-animation-fill-mode: backwards;
				-ms-animation-fill-mode: backwards;
				animation-fill-mode: backwards;
				opacity: 1;
				-ms-filter: "alpha(opacity=100)";
				filter: alpha(opacity=100); }

/* フェードインしながら少し上へ */
@-webkit-keyframes fadeInUp {
		0% {
				opacity: 0;
				-webkit-transform: translateY(40px); }
		100% {
				opacity: 1;
				-webkit-transform: translateY(0); } }

@-moz-keyframes fadeInUp {
		0% {
				opacity: 0;
				-moz-transform: translateY(40px); }
		100% {
				opacity: 1;
				-moz-transform: translateY(0); } }

@-ms-keyframes fadeInUp {
		0% {
				opacity: 0;
				-ms-transform: translateY(40px); }
		100% {
				opacity: 1;
				-ms-transform: translateY(0); } }

@-o-keyframes fadeInUp {
		0% {
				opacity: 0;
				-o-transform: translateY(40px); }
		100% {
				opacity: 1;
				-o-transform: translateY(0); } }

@keyframes fadeInUp {
		0% {
				opacity: 0;
				transform: translateY(40px); }
		100% {
				opacity: 1;
				transform: translateY(0); } }

.js-animateFadeInUp,
.js-x-animateFadeInUp {
		opacity: 0;
		-ms-filter: "alpha(opacity=0)";
		filter: alpha(opacity=0); }
		.js-animateFadeInUp.is--animate,
		.js-x-animateFadeInUp.is--animate {
				-webkit-animation: fadeInUp 0.8s 1 ease-in-out;
				-moz-animation: fadeInUp 0.8s 1 ease-in-out;
				-ms-animation: fadeInUp 0.8s 1 ease-in-out;
				animation: fadeInUp 0.8s 1 ease-in-out;
				-webkit-animation-fill-mode: backwards;
				-moz-animation-fill-mode: backwards;
				-ms-animation-fill-mode: backwards;
				animation-fill-mode: backwards;
				opacity: 1;
				-ms-filter: "alpha(opacity=100)";
				filter: alpha(opacity=100); }

/* フェードインしながら少し上へ */
@-webkit-keyframes fadeInUp2 {
		0% {
				opacity: 0;
				-webkit-transform: translateY(80%); }
		100% {
				opacity: 1;
				-webkit-transform: translateY(0); } }

@-moz-keyframes fadeInUp2 {
		0% {
				opacity: 0;
				-moz-transform: translateY(80%); }
		100% {
				opacity: 1;
				-moz-transform: translateY(0); } }

@-ms-keyframes fadeInUp2 {
		0% {
				opacity: 0;
				-ms-transform: translateY(80%); }
		100% {
				opacity: 1;
				-ms-transform: translateY(0); } }

@-o-keyframes fadeInUp2 {
		0% {
				opacity: 0;
				-o-transform: translateY(80%); }
		100% {
				opacity: 1;
				-o-transform: translateY(0); } }

@keyframes fadeInUp2 {
		0% {
				opacity: 0;
				transform: translateY(80%); }
		100% {
				opacity: 1;
				transform: translateY(0); } }

.js-animateFadeInUp2,
.js-x-animateFadeInUp2 {
		opacity: 0;
		-ms-filter: "alpha(opacity=0)";
		filter: alpha(opacity=0); }
		.js-animateFadeInUp2.is--animate,
		.js-x-animateFadeInUp2.is--animate {
				-webkit-animation: fadeInUp2 0.8s 1 ease-in-out;
				-moz-animation: fadeInUp2 0.8s 1 ease-in-out;
				-ms-animation: fadeInUp2 0.8s 1 ease-in-out;
				animation: fadeInUp2 0.8s 1 ease-in-out;
				-webkit-animation-fill-mode: backwards;
				-moz-animation-fill-mode: backwards;
				-ms-animation-fill-mode: backwards;
				animation-fill-mode: backwards;
				opacity: 1;
				-ms-filter: "alpha(opacity=100)";
				filter: alpha(opacity=100); }

/* フェードインのみ */
@-webkit-keyframes fadeIn {
		0% {
				opacity: 0; }
		100% {
				opacity: 1; } }

@-moz-keyframes fadeIn {
		0% {
				opacity: 0; }
		100% {
				opacity: 1; } }

@-ms-keyframes fadeIn {
		0% {
				opacity: 0; }
		100% {
				opacity: 1; } }

@-o-keyframes fadeIn {
		0% {
				opacity: 0; }
		100% {
				opacity: 1; } }

@keyframes fadeIn {
		0% {
				opacity: 0; }
		100% {
				opacity: 1; } }

.js-animateFadeIn,
.js-x-animateFadeIn {
		opacity: 0;
		-ms-filter: "alpha(opacity=0)";
		filter: alpha(opacity=0); }
		.js-animateFadeIn.is--animate,
		.js-x-animateFadeIn.is--animate {
				-webkit-animation: fadeIn 0.8s 1 ease-in-out;
				-moz-animation: fadeIn 0.8s 1 ease-in-out;
				-ms-animation: fadeIn 0.8s 1 ease-in-out;
				animation: fadeIn 0.8s 1 ease-in-out;
				-webkit-animation-fill-mode: backwards;
				-moz-animation-fill-mode: backwards;
				-ms-animation-fill-mode: backwards;
				animation-fill-mode: backwards;
				opacity: 1;
				-ms-filter: "alpha(opacity=100)";
				filter: alpha(opacity=100); }

/* スケール 0->1 */
@-webkit-keyframes scaleIn {
		0% {
				opacity: 0;
				-webkit-transform: scale(0);
				-moz-transform: scale(0);
				transform: scale(0); }
		100% {
				opacity: 1;
				-webkit-transform: scale(1);
				-moz-transform: scale(1);
				transform: scale(1); } }

@-moz-keyframes scaleIn {
		0% {
				opacity: 0;
				-webkit-transform: scale(0);
				-moz-transform: scale(0);
				transform: scale(0); }
		100% {
				opacity: 1;
				-webkit-transform: scale(1);
				-moz-transform: scale(1);
				transform: scale(1); } }

@-ms-keyframes scaleIn {
		0% {
				opacity: 0;
				-webkit-transform: scale(0);
				-moz-transform: scale(0);
				transform: scale(0); }
		100% {
				opacity: 1;
				-webkit-transform: scale(1);
				-moz-transform: scale(1);
				transform: scale(1); } }

@-o-keyframes scaleIn {
		0% {
				opacity: 0;
				-webkit-transform: scale(0);
				-moz-transform: scale(0);
				transform: scale(0); }
		100% {
				opacity: 1;
				-webkit-transform: scale(1);
				-moz-transform: scale(1);
				transform: scale(1); } }

@keyframes scaleIn {
		0% {
				opacity: 0;
				-webkit-transform: scale(0);
				-moz-transform: scale(0);
				transform: scale(0); }
		100% {
				opacity: 1;
				-webkit-transform: scale(1);
				-moz-transform: scale(1);
				transform: scale(1); } }

.js-animateScaleIn,
.js-x-animateScaleIn {
		opacity: 0;
		-ms-filter: "alpha(opacity=0)";
		filter: alpha(opacity=0); }
		.js-animateScaleIn.is--animate,
		.js-x-animateScaleIn.is--animate {
				-webkit-animation: scaleIn 1s 1 ease-in-out;
				-moz-animation: scaleIn 1s 1 ease-in-out;
				-ms-animation: scaleIn 1s 1 ease-in-out;
				animation: scaleIn 1s 1 ease-in-out;
				-webkit-animation-fill-mode: backwards;
				-moz-animation-fill-mode: backwards;
				-ms-animation-fill-mode: backwards;
				animation-fill-mode: backwards;
				opacity: 1;
				-ms-filter: "alpha(opacity=100)";
				filter: alpha(opacity=100); }

/* 縦スケール 0->1 */
@-webkit-keyframes scaleUp {
		0% {
				-webkit-transform: scaleY(0);
				-moz-transform: scaleY(0);
				transform: scaleY(0);
				-webkit-transform-origin: center bottom; }
		100% {
				-webkit-transform: scaleY(1);
				-moz-transform: scaleY(1);
				transform: scaleY(1);
				-webkit-transform-origin: center bottom; } }

@-moz-keyframes scaleUp {
		0% {
				-webkit-transform: scaleY(0);
				-moz-transform: scaleY(0);
				transform: scaleY(0);
				-moz-transform-origin: center bottom; }
		100% {
				-webkit-transform: scaleY(1);
				-moz-transform: scaleY(1);
				transform: scaleY(1);
				-moz-transform-origin: center bottom; } }

@-ms-keyframes scaleUp {
		0% {
				-webkit-transform: scaleY(0);
				-moz-transform: scaleY(0);
				transform: scaleY(0);
				-ms-transform-origin: center bottom; }
		100% {
				-webkit-transform: scaleY(1);
				-moz-transform: scaleY(1);
				transform: scaleY(1);
				-ms-transform-origin: center bottom; } }

@-o-keyframes scaleUp {
		0% {
				-webkit-transform: scaleY(0);
				-moz-transform: scaleY(0);
				transform: scaleY(0);
				-o-transform-origin: center bottom; }
		100% {
				-webkit-transform: scaleY(1);
				-moz-transform: scaleY(1);
				transform: scaleY(1);
				-o-transform-origin: center bottom; } }

@keyframes scaleUp {
		0% {
				-webkit-transform: scaleY(0);
				-moz-transform: scaleY(0);
				transform: scaleY(0);
				transform-origin: center bottom; }
		100% {
				-webkit-transform: scaleY(1);
				-moz-transform: scaleY(1);
				transform: scaleY(1);
				transform-origin: center bottom; } }

.js-animateScaleUp {
		-webkit-transform: scaleY(0);
		-moz-transform: scaleY(0);
		transform: scaleY(0);
		transform-origin: center bottom; }
		.js-animateScaleUp.is--animate {
				-webkit-animation: scaleUp 1s 1 ease-in-out;
				-moz-animation: scaleUp 1s 1 ease-in-out;
				-ms-animation: scaleUp 1s 1 ease-in-out;
				animation: scaleUp 1s 1 ease-in-out;
				-webkit-animation-fill-mode: forwards;
				-moz-animation-fill-mode: forwards;
				-ms-animation-fill-mode: forwards;
				animation-fill-mode: forwards; }

/* レタースペーシングを縮める */
@-webkit-keyframes letter {
		0% {
				letter-spacing: 1em; }
		100% {
				letter-spacing: 0; } }

@-moz-keyframes letter {
		0% {
				letter-spacing: 1em; }
		100% {
				letter-spacing: 0; } }

@-ms-keyframes letter {
		0% {
				letter-spacing: 1em; }
		100% {
				letter-spacing: 0; } }

@-o-keyframes letter {
		0% {
				letter-spacing: 1em; }
		100% {
				letter-spacing: 0; } }

@keyframes letter {
		0% {
				letter-spacing: 1em; }
		100% {
				letter-spacing: 0; } }

.js-x-animateLetter {
		letter-spacing: 1em;
		white-space: nowrap; }
		.js-x-animateLetter.is--animate {
				-webkit-animation: letter 1s 1 ease-in-out;
				-moz-animation: letter 1s 1 ease-in-out;
				-ms-animation: letter 1s 1 ease-in-out;
				animation: letter 1s 1 ease-in-out;
				-webkit-animation-fill-mode: forwards;
				-moz-animation-fill-mode: forwards;
				-ms-animation-fill-mode: forwards;
				animation-fill-mode: forwards; }

/* ----------------------------- スマホ */
/* ----------------------------- 1. 各ページ共通 */
/*=======================================
ヘッダー
=========================================*/
.c-header1 {
		width: calc( 100% - 4.286vw);
		padding-left: 2.143vw;
		padding-right: 2.143vw;
		position: fixed;
		z-index: 10; }
		.c-header1__logo {
				float: left;
				padding-top: 1.429vw; }
				.c-header1__logo a {
						display: block; }
						.c-header1__logo a img {
								width: 12.714vw;
								height: 9.928vw;
								border-radius: 4px;
								box-shadow: 3px 3px 12px rgba(0, 0, 0, 0.04); }
		.c-header1__menu {
				float: right;
				text-align: right;
				margin-top: 2.143vw; }
		.c-header1__nav, .c-header1__contact, .c-header1__sns {
				display: inline-block;
				*display: inline;
				*zoom: 1;
				vertical-align: middle;
				text-align: center; }
		.c-header1__nav ul {
				padding: 1.244vw 2.143vw;
				background-color: #FFF;
				border-radius: 0.571vw;
				box-shadow: 3px 3px 12px rgba(0, 0, 0, 0.04); }
		.c-header1__nav li {
				display: inline-block;
				*display: inline;
				*zoom: 1;
				vertical-align: middle;
				margin-right: 1.429vw; }
				.c-header1__nav li:last-child {
						margin-right: initial; }
				.c-header1__nav li a {
						font-size: clamp(12.8px, 1.143vw, 19.2px);
						line-height: 125%;
						font-weight: 600;
						display: block;
						text-decoration: none;
						transition: all ease .35s; }
						.c-header1__nav li a:hover {
								color: #3C8CB4; }
				.c-header1__nav li.is-current a {
						color: #3C8CB4; }
				.c-header1__nav li.access a {
						color: #3C8CB4; }
		.c-header1__contact {
				margin-left: 1.143vw; }
				.c-header1__contact a {
						display: flex;
						align-items: center;
						background-color: #3C8CB4;
						color: #FFF;
						font-size: clamp(12.8px, 1.143vw, 19.2px);
						line-height: 125%;
						font-weight: 500;
						border-radius: 0.429vw;
						padding: 1.429vw 2vw;
						text-decoration: none;
						box-shadow: 3px 3px 12px rgba(0, 0, 0, 0.04);
						opacity: 1 !important;
						transition: all ease .35s; }
						.c-header1__contact a img {
								vertical-align: middle; }
						.c-header1__contact a .wbg {
								background-color: #FFF;
								position: relative;
								padding: .342vw .607vw;
								width: fit-content;
								border-radius: .214vw;
								margin-left: .857vw; }
								.c-header1__contact a .wbg__wrap {
										position: relative;
										width: .643vw;
										height: .525vw;
										overflow: hidden; }
								.c-header1__contact a .wbg .a1 {
										width: .643vw;
										height: .525vw;
										position: absolute;
										top: 0;
										left: 0;
										right: 0;
										bottom: 0;
										margin: auto;
										transition: all ease .35s; }
								.c-header1__contact a .wbg .a2 {
										width: .643vw;
										height: .525vw;
										position: absolute;
										top: 0;
										left: -1.125vw;
										right: 0;
										bottom: -.918vw;
										margin: auto;
										transition: all ease .35s; }
						.c-header1__contact a:hover {
								background-color: #297CA6; }
								.c-header1__contact a:hover .wbg .a1 {
										bottom: .918vw;
										left: 1.125vw; }
								.c-header1__contact a:hover .wbg .a2 {
										bottom: 0;
										left: 0; }

.fix-link {
		position: fixed;
		left: 2.143vw;
		bottom: 1.429vw;
		z-index: 3; }
		.fix-link__wrap {
				border-radius: 0.429vw;
				background-color: #FFF;
				padding: .857vw;
				box-shadow: 3px 3px 12px rgba(0, 0, 0, 0.04); }
		.fix-link ul {
				display: flex; }
				.fix-link ul li {
						padding-right: 1.143vw;
						margin-right: 1.143vw;
						border-right: 1px solid rgba(25, 25, 25, 0.3); }
						.fix-link ul li:last-child {
								padding-right: initial;
								margin-right: initial;
								border-right: initial; }
						.fix-link ul li a {
								font-size: clamp(12px, 1.071vw, 18px);
								line-height: 125%;
								font-weight: 600;
								display: flex;
								align-items: center;
								text-decoration: none;
								padding: .714vw .857vw;
								background-color: #FFF;
								border-radius: .214vw;
								transition: all ease .35s;
								opacity: 1 !important; }
								.fix-link ul li a.en {
										font-family: "Manrope", "Zen Kaku Gothic New", sans-serif;
										font-weight: 500; }
								.fix-link ul li a .img {
										background-size: cover;
										background-repeat: no-repeat;
										background-position: center;
										margin-right: .571vw; }
								.fix-link ul li a.line .img {
										width: 1.071vw;
										height: 1.043vw;
										background-image: url(../img/top/line-icon.svg); }
								.fix-link ul li a.tel .img {
										width: .917vw;
										height: .917vw;
										background-image: url(../img/top/tel-icon.svg); }
								.fix-link ul li a.line:hover .img {
										background-image: url(../img/top/line-icon-w.svg); }
								.fix-link ul li a.tel:hover .img {
										background-image: url(../img/top/tel-icon-w.svg); }
								.fix-link ul li a:hover {
										color: #FFF;
										background-color: #3C8CB4; }
								.fix-link ul li a img {
										vertical-align: middle;
										margin-right: 0.571vw; }

/*=======================================
ページタイトル
=========================================*/
.c-page-toptitle1 {
		max-width: 1000px;
		margin: 0 auto;
		padding: 0 2.857vw; }
		.c-page-toptitle1 h2 {
				font-size: clamp(25.6px, 2.286vw, 38.4px);
				line-height: 150%;
				font-weight: 600; }
		.c-page-toptitle1 p {
				font-size: clamp(11.2px, 1vw, 16.8px);
				line-height: 150%;
				font-weight: 600;
				font-family: "Manrope", "Zen Kaku Gothic New", sans-serif;
				color: #3C8CB4;
				margin-top: 1.143vw; }

.c-title3 {
		text-align: center; }
		.c-title3 h3 {
				font-size: clamp(25.6px, 2.286vw, 38.4px);
				line-height: 150%;
				font-weight: 600; }
		.c-title3 p {
				font-size: clamp(9.6px, 0.857vw, 14.4px);
				line-height: 150%;
				font-weight: 600;
				font-family: "Manrope", "Zen Kaku Gothic New", sans-serif;
				color: #3C8CB4;
				margin-top: 1.143vw; }

.container {
		max-width: 1400px;
		margin: 0 auto; }

.p-firstvisit, .p-doctor, .p-news, .p-equipment, .p-treatment, .p-fees, .p-facilitystandards, .p-access {
		padding-top: 19.285vw; }

/*=======================================
コンテンツ
=========================================*/
.link2 a {
		display: block;
		padding: 1.429vw 1.5vw;
		background-color: #3C8CB4;
		border-radius: 6px;
		font-size: clamp(12.8px, 1.143vw, 19.2px);
		line-height: 125%;
		font-weight: 600;
		color: #FFF;
		text-decoration: none;
		display: flex;
		align-items: center;
		width: fit-content;
		opacity: 1 !important; }

.link2 .wbg {
		background-color: #FFF;
		position: relative;
		padding: .342vw .607vw;
		width: fit-content;
		border-radius: .214vw;
		margin-left: .857vw; }
		.link2 .wbg__wrap {
				position: relative;
				width: .643vw;
				height: .525vw;
				overflow: hidden; }
		.link2 .wbg .a1 {
				width: .643vw;
				height: .525vw;
				position: absolute;
				top: 0;
				left: 0;
				right: 0;
				bottom: 0;
				margin: auto;
				transition: all ease .35s; }
		.link2 .wbg .a2 {
				width: .643vw;
				height: .525vw;
				position: absolute;
				top: 0;
				left: -1.125vw;
				right: 0;
				bottom: -.918vw;
				margin: auto;
				transition: all ease .35s; }

.link2 a:hover {
		background-color: #297CA6; }
		.link2 a:hover .wbg .a1 {
				bottom: .918vw;
				left: 1.125vw; }
		.link2 a:hover .wbg .a2 {
				bottom: 0;
				left: 0; }

.link3 a {
		display: block;
		padding: 1.429vw 1.5vw;
		background-color: #FFF;
		border: 1px solid #E0E0E0;
		border-radius: 8px;
		font-size: clamp(12.8px, 1.143vw, 19.2px);
		line-height: 125%;
		font-weight: 600;
		text-decoration: none;
		display: flex;
		align-items: center;
		width: fit-content; }
		.link3 a img {
				width: 1.857vw;
				margin-left: 0.857vw;
				display: block; }

.link3 .bbg {
		margin-left: .857vw; }

.fadeup {
		opacity: 0;
		transform: translateY(40px);
		transition: opacity 1s ease, transform 1s ease; }
		.fadeup.is-show {
				opacity: 1;
				transform: translateY(0); }

/* ----------------------------- スマホ */
@media screen and (max-width: 767px) {
		.sp-contact {
				position: fixed;
				top: 16px;
				right: 90px; }
				.sp-contact a {
						font-size: clamp(9.6px, 3.2vw, 14.4px);
						line-height: 150%;
						font-weight: 700;
						color: #3C8CB4;
						background-color: #FFF;
						border-radius: 6px;
						text-align: center;
						display: block;
						text-decoration: none;
						padding: 10px 20px;
						box-shadow: 3px 3px 12px rgba(0, 0, 0, 0.04); }
		.fix-link {
				position: fixed;
				left: 0;
				right: 0;
				bottom: 20px;
				width: calc( 100% - 32px);
				margin: auto; }
				.fix-link__wrap {
						border-radius: 6px;
						padding: 16px; }
				.fix-link ul li {
						padding-right: 16px;
						margin-right: auto; }
						.fix-link ul li:last-child {
								padding-right: initial;
								margin-right: initial; }
						.fix-link ul li a {
								font-size: clamp(12px, 1.071vw, 18px);
								line-height: 125%;
								font-weight: 500;
								display: block;
								text-decoration: none; }
								.fix-link ul li a img {
										vertical-align: middle;
										margin-right: 6px; }
		.c-page-toptitle1 {
				max-width: 1000px;
				margin: 0 auto;
				padding: initial;
				text-align: center; }
				.c-page-toptitle1 h2 {
						font-size: clamp(19.2px, 6.4vw, 28.8px); }
				.c-page-toptitle1 p {
						font-size: clamp(10.4px, 3.467vw, 15.6px);
						margin-top: 2.133vw; }
		.c-title3 h3 {
				font-size: clamp(19.2px, 6.4vw, 28.8px); }
		.c-title3 p {
				font-size: clamp(10.4px, 3.467vw, 15.6px);
				margin-top: 2.133vw; }
		.p-firstvisit, .p-doctor, .p-news, .p-equipment, .p-treatment, .p-fees, .p-facilitystandards, .p-access {
				padding-top: 48vw; }
		.link2 a {
				padding: 5.333vw;
				border-radius: 6px;
				font-size: clamp(11.2px, 3.733vw, 16.8px); }
				.link2 a:hover .wbg .a1 {
						bottom: 20px;
						left: 24px; }
		.link2 .wbg {
				padding: 4px 7.5px;
				margin-left: 12px;
				border-radius: 3px; }
				.link2 .wbg__wrap {
						width: 11px;
						height: 9px; }
				.link2 .wbg .a1 {
						width: 11px;
						height: 9px; }
				.link2 .wbg .a2 {
						width: 11px;
						height: 9px;
						left: -25px;
						bottom: -20px; }
		.link3 a {
				padding: 5.333vw 7.467vw;
				border-radius: 8px;
				font-size: clamp(11.2px, 3.733vw, 16.8px); }
				.link3 a img {
						width: 6.933vw;
						margin-left: 3.2vw;
						display: block; }
		.link3 .bbg {
				margin-left: 12px; }
		.c-header1 {
				padding-left: initial;
				padding-right: initial;
				position: fixed;
				width: 100%;
				z-index: 5999;
				-webkit-box-sizing: border-box;
				-moz-box-sizing: border-box;
				box-sizing: border-box; }
				.c-header1__logo {
						padding-top: initial;
						position: absolute;
						top: 16px;
						left: 20px;
						z-index: 5; }
						.c-header1__logo a img {
								width: 110px;
								height: 96px; }
				.c-header1__btn {
						max-width: 50%;
						float: right;
						padding: 18px 10px 10px 10px;
						cursor: pointer;
						position: relative;
						z-index: 5;
						-webkit-box-sizing: border-box;
						-moz-box-sizing: border-box;
						box-sizing: border-box;
						background-color: #3C8CB4;
						border-radius: 6px;
						color: #FFF;
						top: 16px;
						right: 16px;
						box-shadow: 3px 3px 12px rgba(0, 0, 0, 0.04); }
						.c-header1__btn p.menu-txt {
								font-size: 10px;
								font-size: 1rem;
								line-height: 100%;
								font-weight: 700;
								text-align: center;
								margin-top: 8px;
								padding-top: 8px;
								width: 44px; }
						.c-header1__btn span {
								display: block;
								width: 20px;
								height: 2px;
								background: #fff;
								vertical-align: middle;
								position: relative;
								-webkit-transition: 0.3s ease all;
								-moz-transition: 0.3s ease all;
								-ms-transition: 0.3s ease all;
								transition: 0.3s ease all;
								margin: 0 auto;
								border-radius: 4px; }
								.c-header1__btn span:before, .c-header1__btn span:after {
										content: "";
										display: block;
										position: absolute;
										width: 100%;
										height: 2px;
										background: #fff;
										-webkit-transition: 0.3s ease all;
										-moz-transition: 0.3s ease all;
										-ms-transition: 0.3s ease all;
										transition: 0.3s ease all;
										transform-origin: center;
										border-radius: 4px; }
								.c-header1__btn span:before {
										top: -6px; }
								.c-header1__btn span:after {
										bottom: -6px; }
						.c-header1__btn.is-open span {
								background: transparent; }
								.c-header1__btn.is-open span:before {
										-webkit-transform: rotate(45deg);
										-moz-transform: rotate(45deg);
										transform: rotate(45deg);
										transform-origin: center;
										top: 0; }
								.c-header1__btn.is-open span:after {
										-webkit-transform: rotate(-45deg);
										-moz-transform: rotate(-45deg);
										transform: rotate(-45deg);
										transform-origin: center;
										bottom: 0; }
				.c-header1__menu {
						margin-top: initial;
						float: initial;
						display: none;
						position: absolute;
						top: 0;
						left: 0;
						width: 100%;
						z-index: 4;
						padding: 160px 40px 36px;
						-webkit-box-sizing: border-box;
						-moz-box-sizing: border-box;
						box-sizing: border-box;
						background-color: #F9F9F9;
						max-height: 100vh;
						overflow: auto;
						text-align: left; }
				.c-header1__nav, .c-header1__contact, .c-header1__sns {
						display: block; }
				.c-header1__nav {
						margin-bottom: 16vw; }
						.c-header1__nav ul {
								padding: initial;
								background-color: initial;
								border-radius: initial;
								box-shadow: initial; }
						.c-header1__nav li {
								display: block;
								text-align: left;
								margin-right: initial;
								margin-top: 5.333vw; }
								.c-header1__nav li:first-child {
										margin-top: initial; }
								.c-header1__nav li:last-child a {
										color: #3C8CB4; }
								.c-header1__nav li a {
										font-size: clamp(14.4px, 4.8vw, 21.6px);
										display: block;
										width: fit-content; }
								.c-header1__nav li.is-current a {
										border-left-color: #fff; }
						.c-header1__nav .js-pulldown__content {
								padding-top: 25px; }
								.c-header1__nav .js-pulldown__content .c-title1 {
										font-size: 14px;
										font-size: 1.4rem;
										margin-bottom: 15px; }
								.c-header1__nav .js-pulldown__content li {
										float: none;
										width: auto;
										margin-left: 0; }
				.c-header1__contact {
						margin-bottom: 24px;
						padding-left: 15px; }
						.c-header1__contact a {
								font-size: 14px;
								font-size: 1.4rem;
								padding-top: 12px;
								padding-bottom: 12px; }
				.c-header1__sp .mid {
						margin-top: 2.857vw; }
						.c-header1__sp .mid .flink1 a {
								display: block;
								border: 1px solid rgba(28, 28, 28, 0.15);
								border-radius: 8px;
								text-decoration: none;
								text-align: center;
								padding: 6.4vw 0; }
								.c-header1__sp .mid .flink1 a span {
										display: block; }
										.c-header1__sp .mid .flink1 a span.sp1 {
												font-size: clamp(10.4px, 3.467vw, 15.6px);
												line-height: 150%; }
										.c-header1__sp .mid .flink1 a span.sp2 {
												font-size: clamp(16px, 5.333vw, 24px);
												line-height: 100%;
												font-weight: 500;
												margin: 3.2vw 0;
												font-family: "Manrope", "Zen Kaku Gothic New", sans-serif; }
												.c-header1__sp .mid .flink1 a span.sp2 img {
														width: 4.267vw;
														margin-right: 12px;
														vertical-align: middle; }
										.c-header1__sp .mid .flink1 a span.sp3 {
												font-size: clamp(9.6px, 3.2vw, 14.4px);
												line-height: 150%;
												font-family: "Manrope", "Zen Kaku Gothic New", sans-serif; }
						.c-header1__sp .mid .mid-l {
								margin: 5.333vw 0; }
						.c-header1__sp .mid .flink2 a {
								font-size: clamp(12px, 4vw, 18px);
								line-height: 200%;
								font-weight: 600;
								color: #FFF;
								background-color: #3C8CB4;
								border-radius: 8px;
								display: block;
								width: 100%;
								padding: 6.4vw 0;
								text-decoration: none;
								text-align: center; }
								.c-header1__sp .mid .flink2 a img {
										width: 4.8vw;
										margin-right: 12px;
										vertical-align: middle; }
						.c-header1__sp .mid .flink3 a {
								font-size: clamp(12px, 4vw, 18px);
								line-height: 200%;
								font-weight: 600;
								border: 1px solid rgba(28, 28, 28, 0.15);
								border-radius: 8px;
								display: block;
								width: 100%;
								padding: 6.4vw 0;
								text-decoration: none;
								text-align: center; }
				.c-header1__sp .btm {
						margin-top: 12.8vw; }
						.c-header1__sp .btm .calender img {
								width: 100%;
								display: block; }
						.c-header1__sp .btm .calender p {
								font-size: clamp(11.2px, 3.733vw, 16.8px);
								line-height: 150%;
								font-weight: 400;
								margin-top: 5.333vw; }
				.c-header1__sp .address {
						margin-top: 16vw; }
						.c-header1__sp .address p {
								font-size: clamp(12.8px, 4.267vw, 19.2px);
								line-height: 200%;
								font-weight: 400; }
								.c-header1__sp .address p:last-child {
										font-size: clamp(11.2px, 3.733vw, 16.8px);
										line-height: 175%; }
						.c-header1__sp .address a {
								display: block;
								text-decoration: underline;
								font-size: clamp(12px, 4vw, 18px);
								line-height: 200%;
								margin: 2.133vw 0 5.333vw; } }

/*=======================================
フッター
=========================================*/
.footer {
		padding: 0 2.142vw 2.857vw 2.142vw;
		margin-top: 12.857vw; }
		.footer__wrap {
				padding: 4.071vw;
				background-color: #FFF;
				border-radius: 4.285vw; }
		.footer .flex {
				display: flex; }
				.footer .flex .l {
						width: 54%; }
				.footer .flex .r {
						width: 40%;
						margin-left: auto; }
				.footer .flex .top {
						display: flex; }
						.footer .flex .top .logo {
								width: 31.27%; }
								.footer .flex .top .logo img {
										width: 100%;
										display: block; }
						.footer .flex .top .txt {
								width: 56.8%;
								margin-left: auto; }
								.footer .flex .top .txt p {
										font-size: clamp(12.8px, 1.143vw, 19.2px);
										line-height: 200%;
										font-weight: 400; }
								.footer .flex .top .txt a {
										font-size: clamp(12px, 1.071vw, 18px);
										line-height: 200%;
										font-weight: 400;
										display: block;
										margin: 8px 0 12px; }
				.footer .flex .mid {
						margin-top: 2.857vw; }
						.footer .flex .mid .flink1 a {
								display: block;
								border: 1px solid rgba(28, 28, 28, 0.15);
								border-radius: .571vw;
								text-decoration: none;
								text-align: center;
								padding: 1.714vw; }
								.footer .flex .mid .flink1 a span {
										display: block; }
										.footer .flex .mid .flink1 a span.sp1 {
												font-size: clamp(11.2px, 1vw, 16.8px);
												line-height: 150%; }
										.footer .flex .mid .flink1 a span.sp2 {
												font-size: clamp(25.6px, 2.286vw, 38.4px);
												line-height: 100%;
												font-weight: 500;
												vertical-align: middle;
												margin: .857vw 0;
												font-family: "Manrope", "Zen Kaku Gothic New", sans-serif; }
												.footer .flex .mid .flink1 a span.sp2 img {
														vertical-align: middle;
														width: 1.429vw;
														margin-right: 1.429vw; }
										.footer .flex .mid .flink1 a span.sp3 {
												font-size: clamp(10.4px, 0.929vw, 15.6px);
												line-height: 150%;
												font-family: "Manrope", "Zen Kaku Gothic New", sans-serif; }
						.footer .flex .mid .midflex {
								display: flex;
								margin-top: 2.142vw; }
								.footer .flex .mid .midflex .mid-l, .footer .flex .mid .midflex .mid-r {
										width: 48.34%; }
								.footer .flex .mid .midflex .mid-r {
										margin-left: auto; }
						.footer .flex .mid .flink2 a {
								color: #FFF;
								background-color: #3C8CB4;
								border: 1px solid #3C8CB4;
								border-radius: .571vw;
								display: block;
								width: calc( 100% - 3.428vw);
								padding: 1.714vw;
								font-size: clamp(13.6px, 1.214vw, 20.4px);
								line-height: 150%;
								font-weight: 600;
								text-decoration: none;
								text-align: center; }
								.footer .flex .mid .flink2 a img {
										vertical-align: middle;
										margin-right: 0.571vw;
										width: 1.286vw; }
						.footer .flex .mid .flink3 a {
								border: 1px solid rgba(28, 28, 28, 0.15);
								border-radius: .571vw;
								display: block;
								width: calc( 100% - 3.428vw);
								padding: 1.714vw;
								font-size: clamp(13.6px, 1.214vw, 20.4px);
								line-height: 150%;
								font-weight: 600;
								text-decoration: none;
								text-align: center;
								color: #555; }
				.footer .flex .btm {
						margin-top: 2.857vw; }
						.footer .flex .btm .calender img {
								width: 100%;
								display: block; }
						.footer .flex .btm .calender p {
								font-size: clamp(12px, 1.071vw, 18px);
								line-height: 150%;
								font-weight: 400;
								margin-top: 1.428vw; }
				.footer .flex .map {
						width: 100%;
						height: 100%; }
						.footer .flex .map iframe {
								width: 100%;
								height: 100%;
								border-radius: 2.142vw; }
		.footer .ff2 {
				margin-top: 2vw; }
		.footer .flink4 {
				display: flex;
				align-items: center; }
				.footer .flink4 a {
						font-size: clamp(9.6px, 0.857vw, 14.4px);
						line-height: 125%;
						display: block;
						margin-left: 1.429vw; }
						.footer .flink4 a:first-child {
								margin-left: initial; }
		.footer .copyright {
				width: fit-content;
				margin-left: auto; }
				.footer .copyright p {
						font-size: 12px;
						font-size: 1.2rem;
						line-height: 125%; }

/* ----------------------------- スマホ */
@media screen and (max-width: 767px) {
		.footer {
				padding: 0 5.333vw 8vw;
				margin-top: 25.6vw; }
				.footer__wrap {
						padding: 12.8vw 5.333vw;
						border-radius: 16vw; }
				.footer .flex {
						display: block; }
						.footer .flex .l {
								width: auto; }
						.footer .flex .r {
								width: auto; }
						.footer .flex .top {
								display: block; }
								.footer .flex .top .logo {
										width: 53.333vw;
										margin: 0 auto; }
								.footer .flex .top .txt {
										width: auto;
										margin: 9.6vw auto 0;
										text-align: center; }
										.footer .flex .top .txt p {
												font-size: clamp(11.2px, 3.733vw, 16.8px); }
										.footer .flex .top .txt a {
												font-size: clamp(12px, 4vw, 18px); }
						.footer .flex .mid {
								margin-top: 12.8vw; }
								.footer .flex .mid .midflex {
										display: block;
										margin-top: 5.333vw; }
										.footer .flex .mid .midflex .mid-l, .footer .flex .mid .midflex .mid-r {
												width: auto; }
										.footer .flex .mid .midflex .mid-r {
												margin-top: 5.333vw; }
								.footer .flex .mid .flink1 a {
										border-radius: 2.133vw;
										padding: 5.333vw; }
										.footer .flex .mid .flink1 a span.sp1 {
												font-size: clamp(10.4px, 3.467vw, 15.6px); }
										.footer .flex .mid .flink1 a span.sp2 {
												font-size: clamp(16px, 5.333vw, 24px);
												margin: 3.2vw 0; }
												.footer .flex .mid .flink1 a span.sp2 img {
														width: 4.267vw;
														margin-right: 3.2vw; }
										.footer .flex .mid .flink1 a span.sp3 {
												font-size: clamp(9.6px, 3.2vw, 14.4px); }
								.footer .flex .mid .flink2 a {
										width: auto;
										padding: 6.4vw;
										font-size: clamp(12px, 4vw, 18px);
										line-height: 200%;
										border-radius: 2.133vw; }
										.footer .flex .mid .flink2 a img {
												width: 4.8vw;
												margin-right: 2.133vw; }
								.footer .flex .mid .flink3 a {
										width: auto;
										padding: 6.4vw;
										font-size: clamp(12px, 4vw, 18px);
										line-height: 200%;
										border-radius: 2.133vw; }
						.footer .flex .btm {
								margin-top: 12.8vw; }
								.footer .flex .btm .calender p {
										font-size: clamp(11.2px, 3.733vw, 16.8px);
										margin-top: 5.333vw; }
						.footer .flex .map {
								height: 456px;
								margin-top: 12.8vw; }
								.footer .flex .map iframe {
										border-radius: 8vw; }
				.footer .flink4 {
						display: block; }
				.footer .ff2 {
						margin-top: 6.4vw; }
						.footer .ff2 a {
								font-size: clamp(9.6px, 3.2vw, 14.4px);
								width: fit-content;
								margin: 0 auto;
								margin-top: 14px; }
								.footer .ff2 a:first-child {
										margin: 0 auto; }
				.footer .copyright {
						text-align: center;
						width: initial;
						margin-top: 6.4vw; }
						.footer .copyright p {
								font-size: clamp(9.6px, 3.2vw, 14.4px); } }

/*=======================================
サイドバー
=========================================*/
.p-sidebar .box {
		margin-bottom: 55px; }
		.p-sidebar .box:last-child {
				margin-bottom: 0; }
		.p-sidebar .box.recommend .c-list4 {
				background: #F7F7F7;
				padding: 30px; }
				.p-sidebar .box.recommend .c-list4 li {
						float: none;
						width: auto;
						margin-left: 0;
						margin-bottom: 40px; }
						.p-sidebar .box.recommend .c-list4 li:last-child {
								margin-bottom: 0; }

/* ----------------------------- スマホ */
/* ----------------------------- 2. トップページ */
/*=======================================
トップページ
=========================================*/
@keyframes zoomOut {
		0% {
				transform: scale(1); }
		100% {
				transform: scale(0.85); } }

@keyframes zoomOut2 {
		0% {
				transform: scale(1.15); }
		100% {
				transform: scale(1); } }

.kv {
		width: 100%;
		height: 100vh;
		overflow: hidden;
		position: relative;
		z-index: 1; }
		.kv-slider {
				width: 100%;
				height: 100%; }
				.kv-slider img {
						width: 100%;
						height: 100%;
						object-fit: cover;
						display: block; }
				.kv-slider .swiper-slide-active img {
						animation: zoomOut2 4.5s linear forwards; }
		.kv-ttl {
				position: absolute;
				left: 6.214vw;
				bottom: 15.714vw;
				z-index: 1; }
				.kv-ttl h2 {
						font-size: clamp(48px, 4.286vw, 72px);
						line-height: 150%;
						font-weight: 400;
						color: #FFF; }
		.kv-calender {
				position: absolute;
				right: 2.143vw;
				bottom: 2.5vw;
				z-index: 1; }
				.kv-calender img {
						width: 34.285vw; }

.p-top .c-page-toptitle1 {
		text-align: center; }

.p-top .sec1 {
		max-width: 79.571vw;
		padding-top: 11.428vw;
		margin: 0 auto; }
		.p-top .sec1 .p-top__content {
				margin-top: 6.857vw; }
		.p-top .sec1 .flex {
				display: flex; }
				.p-top .sec1 .flex .l {
						width: 44%; }
				.p-top .sec1 .flex .r {
						width: 44%;
						margin-left: auto; }
				.p-top .sec1 .flex a {
						display: flex;
						text-decoration: none;
						opacity: 1 !important; }
				.p-top .sec1 .flex .img {
						width: 42.23%; }
						.p-top .sec1 .flex .img img {
								width: 100%;
								display: block; }
				.p-top .sec1 .flex .txt {
						width: 49.57%;
						margin-left: auto;
						align-items: center;
						display: grid; }
						.p-top .sec1 .flex .txt h5 {
								font-size: clamp(16px, 1.429vw, 24px);
								line-height: 150%;
								font-weight: 600;
								text-decoration: underline; }
						.p-top .sec1 .flex .txt p {
								font-size: clamp(12.8px, 1.143vw, 19.2px);
								line-height: 200%;
								font-weight: 400;
								/*
					margin: 1.429vw 0 2.571vw;*/ }

.p-top .sec2 {
		padding-top: 11.428vw;
		max-width: 87.671vw;
		margin: 0 auto; }
		.p-top .sec2 .p-top__wrap {
				background-color: #FFF;
				border-radius: 2.142vw; }
		.p-top .sec2 .c-page-toptitle1 {
				text-align: left;
				padding: initial; }
		.p-top .sec2 .flex {
				display: flex; }
		.p-top .sec2 .l {
				width: 12.857vw; }
		.p-top .sec2 .r {
				width: 51.071vw;
				margin-left: auto; }
		.p-top .sec2 .news {
				padding: 6.857vw 4vw; }
				.p-top .sec2 .news .link3 {
						margin-top: 4.286vw; }
						.p-top .sec2 .news .link3 a {
								align-items: center; }
								.p-top .sec2 .news .link3 a .arrow {
										margin-left: .857vw; }
		.p-top .sec2 ul.news-list li {
				padding-bottom: 2.143vw;
				margin-top: 2.143vw;
				border-bottom: 1px dashed #E0E0E0; }
				.p-top .sec2 ul.news-list li:first-child {
						margin-top: initial; }
				.p-top .sec2 ul.news-list li a {
						position: relative;
						text-decoration: none; }
						.p-top .sec2 ul.news-list li a .inf {
								display: flex;
								align-items: center; }
						.p-top .sec2 ul.news-list li a p.date {
								font-size: clamp(10.4px, 0.929vw, 15.6px);
								line-height: 125%;
								font-weight: 600;
								font-family: "Manrope", "Zen Kaku Gothic New", sans-serif;
								color: #1C1C1C; }
						.p-top .sec2 ul.news-list li a p.category {
								font-size: clamp(9.6px, 0.857vw, 14.4px);
								line-height: 100%;
								font-weight: 400;
								color: #777;
								padding: 6px 8px;
								border: 1px solid #E0E0E0;
								border-radius: 1.429vw;
								margin-left: 1.429vw; }
						.p-top .sec2 ul.news-list li a h3 {
								font-size: clamp(15.2px, 1.357vw, 22.8px);
								line-height: 150%;
								font-weight: 600;
								text-decoration: underline;
								margin: 1.143vw 0;
								color: #1C1C1C; }
						.p-top .sec2 ul.news-list li a p.text {
								font-size: clamp(10.4px, 0.929vw, 15.6px);
								line-height: 175%;
								font-weight: 400;
								color: #777; }
						.p-top .sec2 ul.news-list li a .arrow {
								position: absolute;
								top: 0;
								bottom: 0;
								right: 0;
								margin: auto; }

.p-top .sec3 {
		padding-top: 11.428vw; }
		.p-top .sec3 .p-top__content {
				margin-top: 7.571vw; }
		.p-top .sec3 .top {
				max-width: 63.285vw;
				margin: 0 auto; }
				.p-top .sec3 .top .flex {
						display: flex;
						align-items: center; }
						.p-top .sec3 .top .flex .l {
								width: 36.12%; }
						.p-top .sec3 .top .flex .r {
								width: 48.87%;
								margin-left: auto; }
				.p-top .sec3 .top .txt {
						font-size: clamp(14.4px, 1.286vw, 21.6px);
						line-height: 200%;
						font-weight: 400; }
				.p-top .sec3 .top .link2 {
						margin-top: 3.429vw; }
		.p-top .sec3 .mid {
				max-width: 63.285vw;
				margin: 0 auto; }
				.p-top .sec3 .mid .policy {
						margin-top: 7.428vw;
						background-color: #FFF;
						border-radius: 2.143vw; }
						.p-top .sec3 .mid .policy__wrap {
								padding: 3.428vw 4vw; }
						.p-top .sec3 .mid .policy h5 {
								font-size: clamp(16px, 1.429vw, 24px);
								line-height: 150%;
								font-weight: 600;
								text-align: center;
								margin-bottom: 2.857vw; }
						.p-top .sec3 .mid .policy p {
								font-size: clamp(12.8px, 1.143vw, 19.2px);
								line-height: 200%;
								font-weight: 400;
								display: flex;
								margin-top: 2.143vw; }
								.p-top .sec3 .mid .policy p:first-child {
										margin-top: initial; }
								.p-top .sec3 .mid .policy p span.no {
										font-size: clamp(16.8px, 1.5vw, 25.2px);
										line-height: 150%;
										font-weight: 400;
										font-family: "Manrope", "Zen Kaku Gothic New", sans-serif;
										display: block;
										margin-right: 12px; }
		.p-top .sec3 .btm {
				max-width: 79.57vw;
				margin: 0 auto; }
				.p-top .sec3 .btm .imglist {
						margin-top: 12.857vw; }
						.p-top .sec3 .btm .imglist ul {
								display: flex; }
								.p-top .sec3 .btm .imglist ul li {
										width: 18.857vw;
										margin-left: auto; }
										.p-top .sec3 .btm .imglist ul li:first-child {
												margin-left: initial; }

.p-top .sec4 {
		padding-top: 11.071vw; }
		.p-top .sec4 .c-page-toptitle1 {
				padding: initial; }
		.p-top .sec4 .p-top__wrap {
				max-width: 47.142vw;
				margin: 0 auto;
				background-color: #FFF;
				border-radius: 7.142vw; }
		.p-top .sec4 .p-top__content {
				max-width: 371px;
				margin: 0 auto;
				padding: 6.857vw 0 8vw; }
		.p-top .sec4 .txt1 {
				margin-top: 4.286vw; }
				.p-top .sec4 .txt1 p {
						font-size: clamp(19.2px, 1.714vw, 28.8px);
						line-height: 200%;
						font-weight: 600; }
		.p-top .sec4 .txt2 {
				margin-top: 4.286vw; }
				.p-top .sec4 .txt2 p {
						font-size: clamp(12.8px, 1.143vw, 19.2px);
						line-height: 225%;
						font-weight: 400; }
		.p-top .sec4 .link2 {
				margin-top: 4.286vw; }
				.p-top .sec4 .link2 a {
						margin: 0 auto; }

.p-top .sec5 {
		padding-top: 12.857vw; }
		.p-top .sec5 .p-top__wrap {
				max-width: 71.428vw;
				margin: 0 auto; }
		.p-top .sec5 .p-top__content {
				max-width: 71.428vw;
				padding-top: 6.857vw;
				margin: 0 auto; }
				.p-top .sec5 .p-top__content .flex {
						display: flex; }
						.p-top .sec5 .p-top__content .flex .l {
								width: 43.4%; }
						.p-top .sec5 .p-top__content .flex .r {
								width: 43.4%;
								margin-left: auto; }
				.p-top .sec5 .p-top__content .txt h5 {
						font-size: clamp(19.2px, 1.714vw, 28.8px);
						line-height: 200%;
						font-weight: 600; }
				.p-top .sec5 .p-top__content .txt p {
						font-size: clamp(12.8px, 1.143vw, 19.2px);
						line-height: 225%;
						font-weight: 400;
						margin-top: 3.429vw; }
				.p-top .sec5 .p-top__content .link3 {
						margin-top: 4.286vw; }

.top-modal {
		display: none;
		position: fixed;
		inset: 0;
		background: rgba(0, 0, 0, 0.7);
		z-index: 9999; }
		.top-modal__wrap {
				position: absolute;
				top: 50%;
				left: 50%;
				transform: translate(-50%, -50%);
				background-color: #FFF;
				max-width: 1114px;
				width: 79.571vw;
				border-radius: 2.143vw; }
				.top-modal__wrap__inner {
						padding: 4vw 3.429vw 2.857vw; }
				.top-modal__wrap .flex {
						display: flex;
						margin-bottom: 3.571vw; }
				.top-modal__wrap .img {
						width: 20.33%; }
				.top-modal__wrap .text {
						width: 75.73%;
						margin-left: auto; }
						.top-modal__wrap .text p {
								font-size: clamp(13.6px, 1.214vw, 20.4px);
								line-height: 200%;
								font-weight: 400;
								display: flex;
								margin-top: 2.143vw; }
								.top-modal__wrap .text p:first-child {
										margin-top: initial; }
								.top-modal__wrap .text p span.no {
										font-size: clamp(16.8px, 1.5vw, 25.2px);
										line-height: 150%;
										font-weight: 400;
										font-family: "Manrope", "Zen Kaku Gothic New", sans-serif;
										display: block;
										margin-right: 12px; }
		.top-modal_on {
				cursor: pointer; }
		.top-modal_close {
				width: fit-content;
				margin: 0 auto;
				cursor: pointer; }

.arrow-box .wbg2 {
		background-color: #FFF;
		position: relative;
		padding: .535vw .964vw;
		width: fit-content;
		border: 1px solid #E0E0E0;
		border-radius: .214vw; }
		.arrow-box .wbg2__wrap {
				position: relative;
				width: .786vw;
				height: .643vw;
				overflow: hidden; }
		.arrow-box .wbg2 .a1 {
				width: .786vw;
				height: .643vw;
				position: absolute;
				top: 0;
				left: 0;
				right: 0;
				bottom: 0;
				margin: auto;
				transition: all ease .35s; }
		.arrow-box .wbg2 .a2 {
				width: .786vw;
				height: .643vw;
				position: absolute;
				top: 0;
				left: -1.572vw;
				right: 0;
				bottom: 0;
				margin: auto;
				transition: all ease .35s; }

.arrow-box .bbg {
		background-color: #3C8CB4;
		padding: .535vw .964vw;
		width: fit-content;
		border-radius: .214vw; }
		.arrow-box .bbg__wrap {
				position: relative;
				width: .786vw;
				height: .643vw;
				overflow: hidden; }
		.arrow-box .bbg .a1 {
				width: .786vw;
				height: .643vw;
				position: absolute;
				top: 0;
				left: 0;
				right: 0;
				bottom: 0;
				margin: auto;
				transition: all ease .35s; }
		.arrow-box .bbg .a2 {
				width: .786vw;
				height: .643vw;
				position: absolute;
				top: 0;
				left: -1.572vw;
				right: 0;
				bottom: 0;
				margin: auto;
				transition: all ease .35s; }

.arrow-box .bbg2 {
		padding: .286vw .535vw; }

.arrow-box:hover .arrow .wbg2 .a1 {
		left: 1.572vw; }

.arrow-box:hover .arrow .wbg2 .a2 {
		left: 0; }

.arrow-box:hover .arrow .bbg .a1 {
		left: 1.572vw; }

.arrow-box:hover .arrow .bbg .a2 {
		left: 0; }

/* ----------------------------- スマホ */
@media screen and (max-width: 767px) {
		.kv-ttl {
				left: 20px;
				bottom: 147px; }
				.kv-ttl h2 {
						font-size: clamp(28.8px, 9.6vw, 43.2px); }
		.p-top .sec1 {
				padding-top: 16vw;
				margin: 0 5.333vw;
				max-width: initial; }
				.p-top .sec1 .p-top__content {
						margin-top: 16vw; }
				.p-top .sec1 .flex {
						display: block; }
						.p-top .sec1 .flex .l, .p-top .sec1 .flex .r {
								width: auto; }
						.p-top .sec1 .flex .r {
								margin-top: 21.333vw; }
						.p-top .sec1 .flex .img {
								width: 36%; }
						.p-top .sec1 .flex .txt {
								width: 52.23%;
								display: block; }
								.p-top .sec1 .flex .txt h5 {
										font-size: clamp(12.8px, 4.267vw, 19.2px); }
								.p-top .sec1 .flex .txt p {
										font-size: clamp(11.2px, 3.733vw, 16.8px);
										margin: 5.333vw 0; }
		.p-top .sec2 {
				padding-top: 21.333vw;
				margin: 0 5.333vw;
				max-width: initial; }
				.p-top .sec2 .p-top__wrap {
						border-radius: 8vw; }
				.p-top .sec2 .c-page-toptitle1 {
						text-align: center; }
				.p-top .sec2 .flex {
						display: block; }
				.p-top .sec2 .news {
						padding: 16vw 5.333vw; }
						.p-top .sec2 .news .link3 {
								margin-top: 9.6vw; }
								.p-top .sec2 .news .link3 a {
										margin: 0 auto; }
										.p-top .sec2 .news .link3 a .arrow {
												margin-left: 12px; }
				.p-top .sec2 .l {
						width: auto; }
				.p-top .sec2 .r {
						width: auto;
						margin-top: 16vw; }
				.p-top .sec2 ul.news-list li {
						padding-bottom: 8vw;
						margin-top: 8vw; }
						.p-top .sec2 ul.news-list li a p.date {
								font-size: clamp(10.4px, 3.467vw, 15.6px); }
						.p-top .sec2 ul.news-list li a p.category {
								font-size: clamp(9.6px, 3.2vw, 14.4px);
								padding: 1.6vw 2.133vw;
								margin-left: 5.333vw;
								border-radius: 100px; }
						.p-top .sec2 ul.news-list li a h4 {
								font-size: clamp(12.8px, 4.267vw, 19.2px);
								margin: 4.267vw 0;
								max-width: 53.333vw; }
						.p-top .sec2 ul.news-list li a p.text {
								font-size: clamp(10.4px, 3.467vw, 15.6px);
								max-width: 53.333vw; }
		.p-top .sec3 {
				padding-top: 16vw; }
				.p-top .sec3 .p-top__wrap {
						padding: 0 5.333vw; }
				.p-top .sec3 .top {
						max-width: initial;
						padding: 0 2.667vw; }
						.p-top .sec3 .top .flex {
								display: block; }
								.p-top .sec3 .top .flex .l {
										width: auto; }
								.p-top .sec3 .top .flex .r {
										width: auto;
										margin-top: 9.6vw; }
						.p-top .sec3 .top .txt {
								text-align: center; }
								.p-top .sec3 .top .txt p {
										font-size: clamp(12px, 4vw, 18px);
										line-height: 200%;
										font-weight: 400; }
						.p-top .sec3 .top .link2 {
								margin-top: 9.6vw; }
								.p-top .sec3 .top .link2 a {
										margin: 0 auto; }
				.p-top .sec3 .mid {
						max-width: initial; }
						.p-top .sec3 .mid .policy {
								margin-top: 16vw;
								border-radius: 8vw; }
								.p-top .sec3 .mid .policy__wrap {
										padding: 10.667vw 5.333vw; }
								.p-top .sec3 .mid .policy h5 {
										font-size: clamp(14.4px, 4.8vw, 21.6px); }
								.p-top .sec3 .mid .policy p {
										font-size: clamp(11.2px, 3.733vw, 16.8px);
										margin-top: 8vw; }
										.p-top .sec3 .mid .policy p span.no {
												font-size: clamp(15.2px, 5.067vw, 22.8px); }
				.p-top .sec3 .btm {
						max-width: initial; }
						.p-top .sec3 .btm .imglist {
								margin-top: 16vw; }
								.p-top .sec3 .btm .imglist img {
										width: 100%; }
		.p-top .sec4 {
				padding-top: 16vw; }
				.p-top .sec4 .p-top__wrap {
						max-width: initial;
						padding: 0 5.333vw;
						margin: 0 5.333vw; }
				.p-top .sec4 .p-top__content {
						max-width: initial;
						padding: 16vw 0 19.2vw; }
				.p-top .sec4 .txt1 {
						margin-top: 12.8vw;
						text-align: center; }
						.p-top .sec4 .txt1 p {
								font-size: clamp(14.4px, 4.8vw, 21.6px); }
				.p-top .sec4 .txt2 {
						margin-top: 10.667vw;
						text-align: center; }
						.p-top .sec4 .txt2 p {
								font-size: clamp(12px, 4vw, 18px); }
				.p-top .sec4 .link2 {
						margin-top: 9.6vw; }
						.p-top .sec4 .link2 a {
								margin: 0 auto; }
		.p-top .sec5 {
				padding-top: 21.333vw; }
				.p-top .sec5 .p-top__wrap {
						max-width: initial;
						padding: 0 5.333vw; }
				.p-top .sec5 .p-top__content {
						max-width: initial;
						padding-top: 12.8vw;
						margin: 0 2.667vw; }
						.p-top .sec5 .p-top__content .flex {
								display: block; }
								.p-top .sec5 .p-top__content .flex .l {
										width: auto; }
								.p-top .sec5 .p-top__content .flex .r {
										width: auto; }
						.p-top .sec5 .p-top__content .txt {
								text-align: center;
								margin-top: 9.6vw; }
								.p-top .sec5 .p-top__content .txt h5 {
										font-size: clamp(14.4px, 4.8vw, 21.6px); }
								.p-top .sec5 .p-top__content .txt p {
										font-size: clamp(12px, 4vw, 18px);
										margin-top: 9.6vw; }
						.p-top .sec5 .p-top__content .link3 {
								margin-top: 6.933vw; }
								.p-top .sec5 .p-top__content .link3 a {
										margin: 0 auto; }
		.top-modal__wrap {
				width: 89.33%;
				height: 90vh; }
				.top-modal__wrap__inner {
						padding: 16vw 8vw;
						height: 80%;
						overflow-y: scroll; }
				.top-modal__wrap .flex {
						display: block;
						margin-bottom: 8vw; }
				.top-modal__wrap .text {
						width: auto;
						margin-left: initial; }
						.top-modal__wrap .text p {
								font-size: clamp(11.2px, 3.733vw, 16.8px);
								margin-top: 8vw; }
								.top-modal__wrap .text p span.no {
										font-size: clamp(15.2px, 5.067vw, 22.8px); }
		.arrow-box .wbg2 {
				padding: 7.5px 14px;
				border-radius: 3px; }
				.arrow-box .wbg2__wrap {
						width: 11px;
						height: 9px; }
				.arrow-box .wbg2 .a1 {
						width: 11px;
						height: 9px; }
				.arrow-box .wbg2 .a2 {
						width: 11px;
						height: 9px;
						left: -24px; }
		.arrow-box .bbg {
				padding: 7.5px 14px;
				border-radius: 3px; }
				.arrow-box .bbg__wrap {
						width: 11px;
						height: 9px; }
				.arrow-box .bbg .a1 {
						width: 11px;
						height: 9px; }
				.arrow-box .bbg .a2 {
						width: 11px;
						height: 9px;
						left: -24px; } }

/* ----------------------------- 3. 下層ページ */
/*=======================================
service
=========================================*/
.p-service {
		/* consulting */ }
		.p-service__introduce .p-top__service-content {
				margin-top: 60px; }
		.p-service__price-content {
				padding-left: 50px;
				padding-right: 50px;
				margin-top: 60px; }
				.p-service__price-content > dl {
						float: left;
						width: 30.4347%;
						margin-left: 4.34795%;
						margin-top: 0;
						margin-bottom: 0;
						-webkit-box-sizing: border-box;
						-moz-box-sizing: border-box;
						box-sizing: border-box;
						border: 1px solid #C3C5C6;
						border-radius: 10px; }
						.p-service__price-content > dl:nth-child(3n+1) {
								clear: both;
								margin-left: 0; }
				.p-service__price-content .class {
						text-align: center;
						padding-top: 47px;
						padding-bottom: 49px; }
						.p-service__price-content .class .title {
								color: #3C8CB4;
								font-weight: normal;
								margin-bottom: 30px; }
						.p-service__price-content .class p {
								font-size: 40px;
								font-size: 4rem;
								font-weight: bold; }
								.p-service__price-content .class p .currency {
										font-size: 24px;
										font-size: 2.4rem;
										margin-right: 8px; }
								.p-service__price-content .class p .per {
										font-size: 16px;
										font-size: 1.6rem;
										font-weight: normal;
										margin-left: 8px; }
				.p-service__price-content .detail table {
						width: 100%; }
				.p-service__price-content .detail th,
				.p-service__price-content .detail td {
						border-top: 1px solid #C3C5C6;
						padding-top: 15px;
						padding-bottom: 15px;
						padding: 11px 13.2142% 12px;
						vertical-align: middle; }
				.p-service__price-content .detail th {
						padding-right: 0;
						text-align: left;
						font-weight: normal;
						font-size: 16px;
						font-size: 1.6rem; }
				.p-service__price-content .detail td {
						padding-left: 0;
						font-size: 18px;
						font-size: 1.8rem;
						text-align: right; }

/* ----------------------------- スマホ */
@media screen and (max-width: 767px) {
		.p-service__price-content {
				padding-left: 15px;
				padding-right: 15px;
				margin-top: 30px; }
				.p-service__price-content > dl {
						float: none;
						width: auto;
						margin-left: 0;
						margin-bottom: 20px; } }

/*=======================================
news detail
=========================================*/
.p-news .c-page-toptitle1 {
		position: relative; }

.p-news .category-list {
		position: absolute;
		right: 2.857vw;
		bottom: 0;
		z-index: 1; }

.p-news__wrap {
		max-width: 1000px;
		padding: 0 2.857vw;
		margin: 0 auto; }

.p-news .news {
		margin-top: 4.286vw; }

.category-list {
		display: flex; }
		.category-list li {
				margin-left: 2.143vw; }
				.category-list li:first-child {
						margin-left: initial; }
				.category-list li.current a {
						color: #3C8CB4; }
				.category-list li a {
						font-size: clamp(11.2px, 1vw, 16.8px);
						line-height: 125%;
						font-weight: 400;
						display: block;
						padding-left: 13px;
						position: relative;
						text-decoration: none; }
						.category-list li a:hover {
								color: #3C8CB4; }
						.category-list li a::before {
								content: "";
								width: 5px;
								height: 5px;
								background-color: #3C8CB4;
								position: absolute;
								left: 0;
								top: 0;
								bottom: 0;
								margin: auto;
								border-radius: 50%; }

.news ul.news-list li {
		margin-top: 2.143vw;
		padding-bottom: 2.143vw;
		border-bottom: 1px dashed #E0E0E0;
		transition: all ease .35s; }
		.news ul.news-list li:first-child {
				margin-top: initial; }
		.news ul.news-list li a {
				display: block;
				text-decoration: none;
				position: relative !important;
				transition: all ease .35s; }
				.news ul.news-list li a p.time {
						font-size: clamp(10.4px, 0.929vw, 15.6px);
						line-height: 150%;
						font-weight: 500;
						font-family: "Manrope", "Zen Kaku Gothic New", sans-serif;
						color: #333; }
				.news ul.news-list li a h4 {
						font-size: clamp(15.2px, 1.357vw, 22.8px);
						line-height: 150%;
						font-weight: 600;
						text-decoration: underline;
						margin: 1.143vw 0;
						transition: all ease .35s; }
				.news ul.news-list li a p {
						font-size: clamp(10.4px, 0.929vw, 15.6px);
						line-height: 175%;
						font-weight: 400;
						color: #777; }
				.news ul.news-list li a .arrow {
						height: fit-content;
						position: absolute;
						right: 0;
						top: 0;
						bottom: 0;
						margin: auto; }
		.news ul.news-list li:hover {
				border-bottom: 1px dashed #3C8CB4; }
				.news ul.news-list li:hover a {
						opacity: 1 !important; }
						.news ul.news-list li:hover a h4 {
								color: #3C8CB4; }

.news .news-head {
		display: flex;
		align-items: center; }

.news .news-category {
		background-color: #FFF;
		border-radius: 100px;
		border: 1px solid #E0E0E0;
		padding: 0.429vw 0.571vw;
		margin-left: 1.571vw;
		display: flex;
		width: fit-content; }
		.news .news-category span {
				font-size: clamp(9.6px, 0.857vw, 14.4px);
				line-height: 100%;
				font-weight: 400;
				color: #777; }

.news-single {
		width: 55.285vw;
		margin: 0 auto; }
		.news-single h1.title {
				font-size: clamp(28.8px, 2.571vw, 43.2px);
				line-height: 175%;
				font-weight: 600;
				margin-bottom: 2.143vw; }
		.news-single .news-head {
				margin-bottom: 4.286vw; }
				.news-single .news-head .time p {
						font-size: clamp(10.4px, 0.929vw, 15.6px);
						line-height: 150%;
						font-weight: 500;
						font-family: "Manrope", "Zen Kaku Gothic New", sans-serif; }
		.news-single .thumbnail {
				padding: 2.857vw 0; }

.post-nav {
		display: flex;
		padding-top: 4.286vw;
		border-top: 1px solid rgba(25, 25, 25, 0.15); }
		.post-nav__wrap {
				position: relative;
				width: 100%; }
				.post-nav__wrap a {
						font-size: clamp(12px, 1.071vw, 18px);
						line-height: 100%;
						font-weight: 400;
						text-decoration: none; }
						.post-nav__wrap a img {
								width: 2.714vw; }
		.post-nav .prev {
				width: 33%;
				position: absolute;
				left: 0;
				bottom: 0;
				top: 0;
				margin: auto; }
				.post-nav .prev img {
						margin-right: 0.857vw; }
		.post-nav .archive {
				width: 33%;
				margin: 0 auto;
				text-align: center; }
		.post-nav .next {
				width: 33%;
				position: absolute;
				right: 0;
				bottom: 0;
				top: 0;
				margin: auto;
				text-align: right; }
				.post-nav .next img {
						margin-left: 0.857vw; }

/* ----------------------------- スマホ */
@media screen and (max-width: 767px) {
		.p-news .category-list {
				position: initial;
				width: fit-content;
				margin: 0 auto;
				padding-top: 16vw; }
				.p-news .category-list li {
						margin-left: 5.333vw; }
						.p-news .category-list li:first-child {
								margin-left: initial; }
						.p-news .category-list li a {
								font-size: clamp(11.2px, 3.733vw, 16.8px); }
		.p-news__wrap {
				padding: 21.333vw 0 0 0;
				max-width: initial;
				margin: 0 8vw; }
		.p-news .news {
				margin-top: initial; }
		.news ul.news-list li {
				margin-top: 8vw;
				padding-bottom: 8vw; }
				.news ul.news-list li a p.time {
						font-size: clamp(10.4px, 3.467vw, 15.6px); }
				.news ul.news-list li a .txt {
						width: 63.5%; }
						.news ul.news-list li a .txt h4 {
								font-size: clamp(12.8px, 4.267vw, 19.2px);
								margin: 4.267vw 0; }
						.news ul.news-list li a .txt p {
								display: -webkit-box;
								/* 必須 */
								-webkit-box-orient: vertical;
								/* 必須 */
								-webkit-line-clamp: 1;
								/* 行数を制限 */
								overflow: hidden;
								/* はみ出た部分を非表示 */ }
		.news .news-category {
				padding: 1.6vw 2.133vw;
				margin-left: 5.333vw; }
				.news .news-category span {
						font-size: clamp(9.6px, 3.2vw, 14.4px); }
		.news-single {
				width: auto;
				margin: 0 8vw; }
				.news-single h1.title {
						font-size: clamp(19.2px, 6.4vw, 28.8px);
						margin-bottom: 8vw; }
				.news-single .news-head {
						margin-bottom: 4.286vw; }
				.news-single .thumbnail {
						padding: 2.857vw 0; }
		.post-nav {
				padding-top: 10.667vw;
				margin-top: 10.667vw; }
				.post-nav__wrap a {
						font-size: clamp(9.6px, 3.2vw, 14.4px); }
						.post-nav__wrap a img {
								width: 10.133vw; }
				.post-nav .prev img {
						margin-right: 12px; }
				.post-nav .next img {
						margin-left: 12px; } }

/*=======================================
firstvisit
=========================================*/
.p-firstvisit__wrap {
		margin-top: 5.714vw; }

.p-firstvisit .fv2 {
		max-width: 79.571vw;
		margin: 0 auto;
		margin-top: 14.285vw; }

.p-firstvisit .fv3 {
		max-width: 63.285vw;
		margin: 0 auto;
		margin-top: 8.571vw; }

.p-firstvisit__content__top {
		display: flex;
		max-width: 1000px;
		margin: 0 auto;
		padding: 0 2.857vw; }

.p-firstvisit__content__img {
		width: 100%;
		max-width: 33.285vw;
		margin-top: -18.571vw; }
		.p-firstvisit__content__img img {
				display: block; }
		.p-firstvisit__content__img .img1 {
				width: 26.928vw;
				margin-left: auto;
				margin-bottom: 6vw; }
		.p-firstvisit__content__img .img2 {
				width: 14.785vw;
				margin-left: auto; }
		.p-firstvisit__content__img .img3 {
				width: 14.785vw;
				margin-top: -5.286vw; }

.p-firstvisit__content__txt {
		max-width: 435px;
		padding-right: 1.714vw;
		margin-right: auto; }
		.p-firstvisit__content__txt p {
				font-size: clamp(12.8px, 1.143vw, 19.2px);
				line-height: 200%;
				font-weight: 400;
				margin-top: 4.286vw; }
				.p-firstvisit__content__txt p:first-child {
						margin-top: initial; }

.p-firstvisit__content__btm {
		max-width: 47.142vw;
		padding: 4.286vw 1.714vw 8vw;
		margin: 0 auto;
		margin-top: 12.857vw;
		background-color: #5B9DBE;
		border-radius: 4.286vw; }
		.p-firstvisit__content__btm .c-title3 {
				margin-bottom: 4.286vw; }
				.p-firstvisit__content__btm .c-title3 h3, .p-firstvisit__content__btm .c-title3 p {
						color: #FFF; }
		.p-firstvisit__content__btm .txt {
				max-width: 26.571vw;
				margin: 0 auto;
				text-align: center;
				color: #FFF; }
				.p-firstvisit__content__btm .txt h5 {
						font-size: clamp(25.6px, 2.286vw, 38.4px);
						line-height: 200%;
						font-weight: 600;
						margin-bottom: 4.286vw; }
				.p-firstvisit__content__btm .txt p {
						font-size: clamp(12.8px, 1.143vw, 19.2px);
						line-height: 200%;
						font-weight: 400; }

.p-firstvisit__content__step ul.step {
		margin-top: 6.857vw; }
		.p-firstvisit__content__step ul.step li {
				margin-top: 4.286vw;
				background-color: #FFF;
				border-radius: 2.143vw; }
				.p-firstvisit__content__step ul.step li:first-child {
						margin-top: initial; }
				.p-firstvisit__content__step ul.step li .step__content {
						display: flex;
						max-width: 63.285vw;
						margin: 0 auto;
						padding: 7.143vw 2.857vw; }
				.p-firstvisit__content__step ul.step li .step__img {
						width: 26.857vw; }
				.p-firstvisit__content__step ul.step li .step__txt {
						max-width: 30.928vw;
						padding-left: 1.714vw;
						margin-left: auto; }
						.p-firstvisit__content__step ul.step li .step__txt p.no {
								font-size: clamp(11.2px, 1vw, 16.8px);
								line-height: 150%;
								font-weight: 600;
								color: #3C8CB4; }
						.p-firstvisit__content__step ul.step li .step__txt h5.ttl {
								font-size: clamp(19.2px, 1.714vw, 28.8px);
								line-height: 150%;
								font-weight: 600;
								margin: 2.143vw 0 2.571vw; }
						.p-firstvisit__content__step ul.step li .step__txt p.txt {
								font-size: clamp(12.8px, 1.143vw, 19.2px);
								line-height: 225%;
								font-weight: 400; }

.p-firstvisit__content__reserve {
		display: flex;
		align-items: center;
		margin-top: 6.857vw; }
		.p-firstvisit__content__reserve .img {
				width: 37%; }
		.p-firstvisit__content__reserve .txt {
				width: 50%;
				margin-left: auto; }
				.p-firstvisit__content__reserve .txt p {
						font-size: clamp(14.4px, 1.286vw, 21.6px);
						line-height: 200%;
						font-weight: 400; }
		.p-firstvisit__content__reserve .link2 {
				margin-top: 3.428vw; }

.p-firstvisit__content__policy {
		margin-top: 6.857vw; }
		.p-firstvisit__content__policy .policy {
				background-color: #FFF;
				border-radius: 2.143vw;
				padding: 3.429vw 4vw; }
				.p-firstvisit__content__policy .policy h4 {
						font-size: clamp(16px, 1.429vw, 24px);
						line-height: 150%;
						font-weight: 600;
						margin-bottom: 2.857vw;
						text-align: center; }
				.p-firstvisit__content__policy .policy p {
						display: flex;
						margin-top: 2.143vw; }
						.p-firstvisit__content__policy .policy p:first-child {
								margin-top: initial; }
						.p-firstvisit__content__policy .policy p span:first-child {
								font-size: clamp(16.8px, 1.5vw, 25.2px);
								line-height: 150%;
								font-weight: 400;
								font-family: "Manrope", "Zen Kaku Gothic New", sans-serif;
								margin-right: 0.857vw; }
						.p-firstvisit__content__policy .policy p span:last-child {
								font-size: clamp(12.8px, 1.143vw, 19.2px);
								line-height: 200%; }

/* ----------------------------- スマホ */
@media screen and (max-width: 767px) {
		.p-firstvisit__wrap {
				margin-top: 12.8vw; }
		.p-firstvisit .fv1, .p-firstvisit .fv2, .p-firstvisit .fv3 {
				margin: 0 5.333vw; }
		.p-firstvisit .fv2 {
				max-width: initial;
				padding-top: 25.6vw; }
		.p-firstvisit .fv3 {
				max-width: initial;
				padding-top: 21.333vw; }
		.p-firstvisit__content__top {
				display: block;
				max-width: initial;
				margin: initial;
				padding: initial; }
		.p-firstvisit__content__txt {
				max-width: initial;
				padding: 0 2.667vw;
				margin-right: initial; }
				.p-firstvisit__content__txt p {
						font-size: clamp(12px, 4vw, 18px);
						margin-top: 6.4vw; }
		.p-firstvisit__content__img {
				max-width: initial;
				margin-top: 21.333vw; }
				.p-firstvisit__content__img .img1 {
						width: 64vw;
						margin: 0 auto; }
				.p-firstvisit__content__img .img2 {
						width: 34.133vw;
						margin-top: 10.667vw; }
				.p-firstvisit__content__img .img3 {
						width: 40.533vw;
						margin-top: -14.933vw; }
		.p-firstvisit__content__btm {
				max-width: initial;
				padding: 12.8vw 5.333vw 19.2vw;
				margin-top: 21.333vw;
				border-radius: 16vw; }
				.p-firstvisit__content__btm .c-title3 {
						margin-bottom: 12.8vw; }
				.p-firstvisit__content__btm .txt {
						max-width: initial; }
						.p-firstvisit__content__btm .txt h5 {
								font-size: clamp(20.8px, 6.933vw, 31.2px);
								margin-bottom: 10.667vw; }
						.p-firstvisit__content__btm .txt p {
								font-size: clamp(12px, 4vw, 18px); }
		.p-firstvisit__content__step ul.step {
				margin-top: 10.667vw; }
				.p-firstvisit__content__step ul.step li {
						margin-top: 10.667vw;
						border-radius: 8vw; }
						.p-firstvisit__content__step ul.step li .step__content {
								display: block;
								max-width: initial;
								padding: 9.6vw 5.333vw; }
						.p-firstvisit__content__step ul.step li .step__img {
								width: auto; }
						.p-firstvisit__content__step ul.step li .step__txt {
								max-width: initial;
								padding: 0 3.2vw;
								margin-top: 8vw; }
								.p-firstvisit__content__step ul.step li .step__txt p.no {
										font-size: clamp(10.4px, 3.467vw, 15.6px); }
								.p-firstvisit__content__step ul.step li .step__txt p.txt {
										font-size: clamp(11.2px, 3.733vw, 16.8px); }
								.p-firstvisit__content__step ul.step li .step__txt h5.ttl {
										font-size: clamp(16px, 5.333vw, 24px);
										margin: 3.2vw 0 5.333vw; }
		.p-firstvisit__content__reserve {
				display: block;
				padding: 0 2.667vw;
				margin-top: 21.333vw; }
				.p-firstvisit__content__reserve .img {
						width: auto; }
				.p-firstvisit__content__reserve .txt {
						width: auto;
						margin-top: 9.6vw;
						text-align: center; }
						.p-firstvisit__content__reserve .txt p {
								font-size: clamp(12px, 4vw, 18px); }
				.p-firstvisit__content__reserve .link2 {
						margin-top: 9.6vw; }
						.p-firstvisit__content__reserve .link2 a {
								margin: 0 auto; }
		.p-firstvisit__content__policy {
				margin-top: 16vw; }
				.p-firstvisit__content__policy .policy {
						border-radius: 8vw;
						padding: 10.667vw 5.333vw 12.8vw; }
						.p-firstvisit__content__policy .policy h4 {
								font-size: clamp(14.4px, 4.8vw, 21.6px);
								margin-bottom: 9.6vw; }
						.p-firstvisit__content__policy .policy p {
								margin-top: 8vw; }
								.p-firstvisit__content__policy .policy p span:first-child {
										font-size: clamp(15.2px, 5.067vw, 22.8px);
										margin-right: 3.2vw; }
								.p-firstvisit__content__policy .policy p span:last-child {
										font-size: clamp(11.2px, 3.733vw, 16.8px); } }

/*=======================================
doctor
=========================================*/
.p-doctor__wrap {
		margin-top: 6.857vw; }

.p-doctor__content {
		display: flex;
		max-width: 67.428vw;
		margin: 0 auto;
		padding: 0 2.857vw;
		margin-right: 7%; }
		.p-doctor__content__img {
				max-width: 26.928vw; }
				.p-doctor__content__img .sticky {
						position: sticky;
						top: 8.571vw; }
				.p-doctor__content__img img {
						margin-bottom: 2.571vw; }
				.p-doctor__content__img p {
						font-size: clamp(11.2px, 1vw, 16.8px);
						line-height: 125%;
						font-weight: 600; }
				.p-doctor__content__img h3 {
						font-size: clamp(19.2px, 1.714vw, 28.8px);
						line-height: 150%;
						font-weight: 600;
						margin-top: 0.857vw; }
		.p-doctor__content__txt {
				max-width: 31vw;
				padding-left: 1.714vw;
				margin-left: auto;
				margin-top: 4.286vw; }
				.p-doctor__content__txt h3 {
						font-size: clamp(25.6px, 2.286vw, 38.4px);
						line-height: 200%;
						font-weight: 600;
						margin-bottom: 3.429vw; }
				.p-doctor__content__txt p {
						font-size: clamp(12.8px, 1.143vw, 19.2px);
						line-height: 200%;
						font-weight: 400; }
				.p-doctor__content__txt__list {
						margin-top: 3.429vw; }
						.p-doctor__content__txt__list:first-child {
								margin-top: 5.714vw; }
						.p-doctor__content__txt__list h6 {
								font-size: clamp(16px, 1.429vw, 24px);
								line-height: 200%;
								font-weight: 400;
								padding-left: 1.571vw;
								position: relative; }
								.p-doctor__content__txt__list h6::before {
										content: "";
										display: block;
										width: 0.429vw;
										height: 0.429vw;
										background-color: #3C8CB4;
										border-radius: 50%;
										position: absolute;
										left: 0;
										top: 0;
										bottom: 0;
										margin: auto; }
						.p-doctor__content__txt__list ul {
								margin-top: 1.429vw; }
								.p-doctor__content__txt__list ul li {
										font-size: clamp(12px, 1.071vw, 18px);
										line-height: 200%;
										padding: 0.571vw 0;
										border-top: 1px dotted rgba(33, 33, 33, 0.15); }
										.p-doctor__content__txt__list ul li:last-child {
												border-bottom: 1px dotted rgba(33, 33, 33, 0.15); }

/* ----------------------------- スマホ */
@media screen and (max-width: 767px) {
		.p-doctor__wrap {
				margin-top: 16vw; }
		.p-doctor__content {
				display: block;
				max-width: initial;
				padding: 0 2.667vw;
				margin: 0 5.333vw !important; }
				.p-doctor__content__img {
						max-width: initial;
						text-align: center; }
						.p-doctor__content__img .sticky {
								position: initial;
								top: initial; }
						.p-doctor__content__img img {
								margin-bottom: 5.333vw; }
						.p-doctor__content__img p {
								font-size: clamp(9.6px, 3.2vw, 14.4px); }
						.p-doctor__content__img h3 {
								font-size: clamp(16px, 5.333vw, 24px);
								margin-top: 3vw; }
				.p-doctor__content__txt {
						max-width: initial;
						padding-left: initial;
						margin-left: initial;
						margin-top: 16vw; }
						.p-doctor__content__txt h3 {
								font-size: clamp(20.8px, 6.933vw, 31.2px);
								margin-bottom: 9.6vw;
								text-align: center; }
						.p-doctor__content__txt p {
								font-size: clamp(12px, 4vw, 18px); }
						.p-doctor__content__txt__list {
								margin-top: 12.8vw; }
								.p-doctor__content__txt__list.lft {
										margin-top: 16vw; }
								.p-doctor__content__txt__list h6 {
										font-size: clamp(13.6px, 4.533vw, 20.4px);
										padding-left: 5.867vw; }
										.p-doctor__content__txt__list h6::before {
												width: 6px;
												height: 6px; }
								.p-doctor__content__txt__list ul {
										margin-top: 5.333vw; }
										.p-doctor__content__txt__list ul li {
												font-size: clamp(11.2px, 3.733vw, 16.8px);
												padding: 2.133vw 0; } }

/*=======================================
access
=========================================*/
.p-access__wrap {
		margin-top: 6.857vw; }

.p-access__content__top {
		width: 47.142vw;
		margin: 0 auto;
		background-color: #FFF;
		border-radius: 7.142vw;
		text-align: center; }
		.p-access__content__top__wrap {
				width: 26.5vw;
				margin: 0 auto;
				padding: 6.857vw; }
		.p-access__content__top h4 {
				font-size: clamp(19.2px, 1.714vw, 28.8px);
				line-height: 200%;
				font-weight: 600; }
		.p-access__content__top img {
				width: 14.785vw;
				margin: 0 auto;
				padding: 3.429vw 0; }
		.p-access__content__top p {
				font-size: clamp(12.8px, 1.143vw, 19.2px);
				line-height: 225%;
				font-weight: 400; }

.p-access__content__mid {
		padding-top: 14.857vw;
		margin: 0 auto;
		width: 71.428vw; }
		.p-access__content__mid img {
				width: 100%; }
		.p-access__content__mid p {
				font-size: clamp(13.6px, 1.214vw, 20.4px);
				line-height: 200%;
				font-weight: 400;
				margin-top: 1.143vw; }

.p-access__content__btm {
		padding-top: 11.785vw; }
		.p-access__content__btm .flex {
				width: 79.571vw;
				margin: 0 auto;
				display: flex; }
				.p-access__content__btm .flex .l {
						width: 49.1%; }
				.p-access__content__btm .flex .r {
						width: 49.1%;
						margin-left: auto;
						background-color: #FFF;
						border-radius: 2.143vw; }
		.p-access__content__btm .map {
				height: 100%; }
				.p-access__content__btm .map iframe {
						width: 100%;
						height: 100%;
						border-radius: 2.143vw; }
		.p-access__content__btm .txt {
				padding: 4vw; }
				.p-access__content__btm .txt .txt1 {
						padding-bottom: 3.429vw;
						margin-bottom: 3.429vw;
						border-bottom: 1px dashed rgba(25, 25, 25, 0.15); }
						.p-access__content__btm .txt .txt1 h4 {
								font-size: clamp(19.2px, 1.714vw, 28.8px);
								line-height: 150%;
								font-weight: 600;
								margin-bottom: 2.143vw; }
						.p-access__content__btm .txt .txt1 p {
								font-size: clamp(12.8px, 1.143vw, 19.2px);
								line-height: 200%;
								font-weight: 400; }
				.p-access__content__btm .txt .txt2 h6 {
						font-size: clamp(12.8px, 1.143vw, 19.2px);
						line-height: 200%;
						font-weight: 600;
						margin-bottom: 0.857vw; }
				.p-access__content__btm .txt .txt2 p {
						font-size: clamp(12.8px, 1.143vw, 19.2px);
						line-height: 200%;
						font-weight: 400; }

/* ----------------------------- スマホ */
@media screen and (max-width: 767px) {
		.p-access__wrap {
				margin-top: 16vw; }
		.p-access__content__top {
				width: auto;
				margin: 0 5.333vw;
				border-radius: 16vw; }
				.p-access__content__top__wrap {
						width: auto;
						padding: 16vw 5.333vw; }
				.p-access__content__top h4 {
						font-size: clamp(14.4px, 4.8vw, 21.6px); }
				.p-access__content__top p {
						font-size: clamp(12px, 4vw, 18px); }
				.p-access__content__top img {
						width: 55.2vw;
						padding: 10.667vw 0; }
		.p-access__content__mid {
				width: auto;
				padding-top: 21.333vw;
				margin: 0 10.667vw; }
				.p-access__content__mid p {
						font-size: clamp(11.2px, 3.733vw, 16.8px);
						margin-top: 5.333vw; }
		.p-access__content__btm {
				padding-top: 21.333vw; }
				.p-access__content__btm .flex {
						display: block;
						width: auto; }
						.p-access__content__btm .flex .l {
								width: auto;
								margin: 0 8vw; }
						.p-access__content__btm .flex .r {
								width: auto;
								margin: 0 5.333vw;
								margin-top: 26.667vw;
								border-radius: 8vw; }
				.p-access__content__btm .map {
						height: 84vw; }
						.p-access__content__btm .map iframe {
								border-radius: 8vw; }
				.p-access__content__btm .txt {
						padding: 10.667vw 8vw; }
						.p-access__content__btm .txt .txt1 {
								padding-bottom: 8vw;
								margin-bottom: 8vw; }
								.p-access__content__btm .txt .txt1 h4 {
										font-size: clamp(14.4px, 4.8vw, 21.6px);
										margin-bottom: 5.333vw; }
								.p-access__content__btm .txt .txt1 p {
										font-size: clamp(12px, 4vw, 18px); }
						.p-access__content__btm .txt .txt2 h6 {
								font-size: clamp(12.8px, 4.267vw, 19.2px);
								margin-bottom: 2.133vw; }
						.p-access__content__btm .txt .txt2 p {
								font-size: clamp(12px, 4vw, 18px); } }

/*=======================================
equipment
=========================================*/
.p-equipment__wrap {
		margin-top: 5.714vw; }

.p-equipment__head {
		background-color: #FFF;
		border-radius: 5.714vw;
		max-width: 87.571vw;
		margin: 0 auto; }
		.p-equipment__head .flex {
				display: flex;
				max-width: 81.5%;
				margin: 0 auto;
				padding: 8.571vw 0; }
				.p-equipment__head .flex .l {
						width: 43.5%; }
						.p-equipment__head .flex .l img {
								width: 100%; }
				.p-equipment__head .flex .r {
						width: 43.5%;
						margin-left: auto; }
						.p-equipment__head .flex .r h4 {
								font-size: clamp(19.2px, 1.714vw, 28.8px);
								line-height: 200%;
								font-weight: 600; }
						.p-equipment__head .flex .r img.logo {
								width: 8.571vw;
								display: block;
								margin: 2.571vw 0 4.571vw; }
						.p-equipment__head .flex .r p {
								font-size: clamp(12.8px, 1.143vw, 19.2px);
								line-height: 225%;
								font-weight: 400; }

.p-equipment__content {
		max-width: 1320px;
		margin: 0 auto;
		padding-top: 12.857vw; }
		.p-equipment__content__ttl {
				text-align: center; }
				.p-equipment__content__ttl h4 {
						font-size: clamp(12.8px, 1.143vw, 19.2px);
						line-height: 150%;
						font-weight: 600;
						color: #3C8CB4;
						margin-bottom: 2.143vw; }
				.p-equipment__content__ttl p {
						font-size: clamp(19.2px, 1.714vw, 28.8px);
						line-height: 200%;
						font-weight: 600; }
		.p-equipment__content__list {
				margin-top: 6.857vw; }
				.p-equipment__content__list ul {
						display: flex;
						flex-wrap: wrap; }
						.p-equipment__content__list ul li {
								width: 32.8%;
								margin-top: 11.428vw;
								margin-left: .8%;
								cursor: pointer; }
								.p-equipment__content__list ul li:nth-child(1), .p-equipment__content__list ul li:nth-child(2), .p-equipment__content__list ul li:nth-child(3) {
										margin-top: initial; }
								.p-equipment__content__list ul li:nth-child(3n-2) {
										margin-left: initial; }
								.p-equipment__content__list ul li .txt {
										padding: 0 13.2%;
										margin-top: 2.571vw;
										text-align: center; }
										.p-equipment__content__list ul li .txt h6 {
												font-size: clamp(14.4px, 1.286vw, 21.6px);
												line-height: 150%;
												font-weight: 600;
												margin-bottom: 2.143vw; }
										.p-equipment__content__list ul li .txt p {
												font-size: clamp(12.8px, 1.143vw, 19.2px);
												line-height: 200%;
												display: -webkit-box;
												/* 必須 */
												-webkit-box-orient: vertical;
												/* 必須 */
												-webkit-line-clamp: 2;
												/* 行数を制限 */
												overflow: hidden;
												/* はみ出た部分を非表示 */ }
										.p-equipment__content__list ul li .txt .btn {
												margin: 1.429vw auto 0;
												width: fit-content;
												padding: 0.429vw 0.429vw 0.429vw 1.143vw;
												background-color: #FFF;
												border-radius: 2.143vw;
												display: flex;
												align-items: center;
												transition: all ease .25s; }
												.p-equipment__content__list ul li .txt .btn p {
														font-size: clamp(9.6px, 0.857vw, 14.4px);
														line-height: 100%;
														font-weight: 400;
														padding-right: 0.571vw;
														transition: all ease .25s; }
												.p-equipment__content__list ul li .txt .btn .img {
														position: relative;
														width: 1.214vw;
														height: 1.214vw; }
														.p-equipment__content__list ul li .txt .btn .img img {
																width: 1.214vw;
																height: 1.214vw;
																vertical-align: middle; }
														.p-equipment__content__list ul li .txt .btn .img .off {
																position: absolute;
																left: 0;
																opacity: 1;
																z-index: 1; }
														.p-equipment__content__list ul li .txt .btn .img .on {
																position: absolute;
																left: 0;
																opacity: 0;
																z-index: 0;
																transition: all ease .25s; }
								.p-equipment__content__list ul li:hover .txt .btn {
										background-color: #3C8CB4; }
										.p-equipment__content__list ul li:hover .txt .btn p {
												color: #FFF; }
										.p-equipment__content__list ul li:hover .txt .btn .img .off {
												opacity: 0; }
										.p-equipment__content__list ul li:hover .txt .btn .img .on {
												opacity: 1;
												z-index: 2; }

.modal {
		position: fixed;
		inset: 0;
		display: none;
		z-index: 9999; }
		.modal__bg {
				position: absolute;
				inset: 0; }
		.modal__wrap {
				position: absolute;
				top: 50%;
				left: 50%;
				transform: translate(-50%, -50%);
				width: 100%;
				height: 100%;
				background: #FFF; }
		.modal .modal_close {
				position: absolute;
				right: 30px;
				top: 30px;
				margin: auto;
				width: fit-content;
				height: fit-content;
				display: flex;
				align-items: center;
				cursor: pointer;
				opacity: 1;
				transition: all ease .25s; }
				.modal .modal_close:hover {
						opacity: .5; }
				.modal .modal_close img {
						width: 30px; }
				.modal .modal_close p {
						font-size: 16px;
						font-size: 1.6rem;
						line-height: 150%;
						color: #3C8CB4;
						text-decoration: underline;
						margin-left: 12px; }
		.modal .modal_prev {
				position: absolute;
				left: 40px;
				top: 0;
				bottom: 0;
				margin: auto;
				width: fit-content;
				height: fit-content;
				cursor: pointer;
				opacity: 1;
				transition: all ease .25s; }
				.modal .modal_prev:hover {
						opacity: .5; }
				.modal .modal_prev img {
						width: 50px; }
		.modal .modal_next {
				position: absolute;
				right: 40px;
				top: 0;
				bottom: 0;
				margin: auto;
				width: fit-content;
				height: fit-content;
				cursor: pointer;
				opacity: 1;
				transition: all ease .25s; }
				.modal .modal_next:hover {
						opacity: .5; }
				.modal .modal_next img {
						width: 50px; }

.modal_content {
		display: none;
		max-width: 1000px;
		width: 71.428vw;
		height: fit-content;
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		margin: auto; }
		.modal_content.is-active {
				display: block; }
		.modal_content__wrap .flex {
				display: flex;
				align-items: center; }
				.modal_content__wrap .flex .img {
						max-width: 490px;
						width: 49%; }
				.modal_content__wrap .flex .txt {
						max-width: 433px;
						width: 43%;
						margin-left: auto; }
						.modal_content__wrap .flex .txt h6 {
								font-size: clamp(19.2px, 1.714vw, 28.8px);
								line-height: 150%;
								font-weight: 600;
								margin-bottom: 2.143vw; }
						.modal_content__wrap .flex .txt p {
								font-size: clamp(12.8px, 1.143vw, 19.2px);
								line-height: 200%;
								font-weight: 400; }
						.modal_content__wrap .flex .txt p.sml {
								font-size: clamp(11.2px, 1vw, 16.8px);
								margin-top: 2.143vw; }

/* ----------------------------- スマホ */
@media screen and (max-width: 767px) {
		.p-equipment__wrap {
				margin: 16vw 5.333vw 0; }
		.p-equipment__head {
				max-width: initial; }
				.p-equipment__head .flex {
						display: block;
						max-width: initial;
						padding: 16vw 0;
						margin: 0 5.333vw; }
						.p-equipment__head .flex .r {
								width: auto; }
								.p-equipment__head .flex .r h4 {
										font-size: clamp(14.4px, 4.8vw, 21.6px);
										text-align: center; }
								.p-equipment__head .flex .r img.logo {
										width: 26.666vw;
										margin: 8vw auto 12.8vw; }
								.p-equipment__head .flex .r img.img {
										width: stretch;
										padding: 0 2.667vw; }
								.p-equipment__head .flex .r p {
										font-size: clamp(12px, 4vw, 18px);
										text-align: center;
										margin-top: 10.667vw; }
		.p-equipment__content {
				padding-top: 25.6vw; }
				.p-equipment__content .ttl h4 {
						font-size: clamp(10.4px, 3.467vw, 15.6px);
						margin-bottom: 3.2vw; }
				.p-equipment__content .ttl p {
						font-size: clamp(14.4px, 4.8vw, 21.6px); }
				.p-equipment__content__list {
						margin-top: 16vw; }
						.p-equipment__content__list ul {
								display: block;
								padding: 0 2.667vw; }
								.p-equipment__content__list ul li {
										width: auto;
										margin-top: 16vw !important;
										margin-left: initial; }
										.p-equipment__content__list ul li:first-child {
												margin-top: initial !important; }
										.p-equipment__content__list ul li .txt {
												padding: 0 5.333vw;
												margin-top: 8vw; }
												.p-equipment__content__list ul li .txt h6 {
														font-size: clamp(14.4px, 4.8vw, 21.6px);
														margin-bottom: 5.333vw; }
												.p-equipment__content__list ul li .txt p {
														font-size: clamp(11.2px, 3.733vw, 16.8px); }
												.p-equipment__content__list ul li .txt .btn {
														padding: 1.6vw 2.933vw 1.6vw 4.267vw;
														border-radius: 8vw;
														margin-top: 5.333vw; }
														.p-equipment__content__list ul li .txt .btn p {
																font-size: clamp(9.6px, 3.2vw, 14.4px);
																padding-right: 3.2vw; }
														.p-equipment__content__list ul li .txt .btn .img {
																width: 4.533vw;
																height: 4.533vw; }
																.p-equipment__content__list ul li .txt .btn .img img {
																		width: 4.533vw;
																		height: 4.533vw; }
		.modal__wrap {
				overflow: scroll; }
		.modal .modal_prev {
				position: initial;
				margin: 0 15px 0 0; }
		.modal .modal_next {
				position: initial;
				margin: 0 0 0 15px; }
		.modal_content {
				width: auto;
				position: initial; }
				.modal_content__wrap {
						padding: 0 8vw;
						margin-top: 25.6vw; }
				.modal_content .flex {
						display: block; }
						.modal_content .flex .img {
								width: auto; }
						.modal_content .flex .txt {
								max-width: initial;
								width: auto;
								margin-top: 8vw; }
								.modal_content .flex .txt h6 {
										font-size: clamp(16.8px, 5.6vw, 25.2px);
										margin-bottom: 5.333vw;
										text-align: center; }
								.modal_content .flex .txt p {
										font-size: clamp(11.2px, 3.733vw, 16.8px); }
										.modal_content .flex .txt p.sml {
												font-size: clamp(9.6px, 3.2vw, 14.4px);
												margin-top: 5.333vw; }
		.modal .spnav {
				display: flex;
				width: fit-content;
				padding: 12.8vw 0;
				margin: 0 auto; } }

/*=======================================
treatment
=========================================*/
.treatment-menu {
		margin-top: 4.286vw; }
		.treatment-menu ul {
				display: flex;
				flex-wrap: wrap; }
				.treatment-menu ul li {
						background-color: #FFF;
						border-radius: 0.714vw;
						margin-right: 1.143vw;
						margin-bottom: 1.143vw;
						transition: all ease .25s; }
						.treatment-menu ul li a {
								display: block;
								color: #3C8CB4;
								font-size: clamp(12px, 1.071vw, 18px);
								line-height: 100%;
								font-weight: 600;
								padding: 0.714vw 1.071vw;
								text-decoration: none;
								transition: all ease .25s; }
						.treatment-menu ul li:hover {
								background-color: #3C8CB4; }
								.treatment-menu ul li:hover a {
										color: #FFF;
										opacity: 1; }

.p-treatment__wrap {
		padding-top: 6.857vw; }

.p-treatment__content {
		width: 79.571vw;
		margin: 0 auto; }

.p-treatment .menu-list li {
		padding-top: 5.714vw; }
		.p-treatment .menu-list li:first-child {
				padding-top: initial; }
		.p-treatment .menu-list li .inner {
				background-color: #FFF;
				border-radius: 2.143vw; }
		.p-treatment .menu-list li .ttl {
				padding: 2.571vw 4.286vw;
				border-bottom: 1px dashed rgba(28, 28, 28, 0.15); }
				.p-treatment .menu-list li .ttl h5 {
						font-size: clamp(19.2px, 1.714vw, 28.8px);
						line-height: 150%;
						font-weight: 600;
						color: #3C8CB4; }
		.p-treatment .menu-list li .txt {
				padding: 3.429vw 4.286vw; }
				.p-treatment .menu-list li .txt__wrap {
						margin-top: 3.429vw; }
						.p-treatment .menu-list li .txt__wrap:nth-child(1) {
								margin-top: initial; }
				.p-treatment .menu-list li .txt h6 {
						font-size: clamp(14.4px, 1.286vw, 21.6px);
						line-height: 150%;
						font-weight: 600;
						margin-bottom: 1.143vw; }
				.p-treatment .menu-list li .txt p {
						font-size: clamp(12.8px, 1.143vw, 19.2px);
						line-height: 200%;
						font-weight: 400; }
						.p-treatment .menu-list li .txt p span.clr {
								color: #3C8CB4;
								margin-top: 8px;
								display: block; }

/* ----------------------------- スマホ */
@media screen and (max-width: 767px) {
		.treatment-menu {
				overflow: scroll;
				padding: 0 5.333vw;
				margin-top: 12.8vw; }
				.treatment-menu ul {
						width: fit-content;
						flex-wrap: initial; }
						.treatment-menu ul li {
								width: max-content;
								margin-right: 3.733vw;
								margin-bottom: initial;
								border-radius: 2.667vw; }
								.treatment-menu ul li a {
										padding: 2.667vw 4vw; }
		.p-treatment__wrap {
				padding-top: 12.8vw; }
		.p-treatment__content {
				width: auto;
				margin: 0 5.333vw; }
		.p-treatment .menu-list li {
				padding-top: 12.8vw; }
				.p-treatment .menu-list li .inner {
						border-radius: 8vw; }
				.p-treatment .menu-list li .ttl {
						padding: 6.4vw; }
						.p-treatment .menu-list li .ttl h5 {
								font-size: clamp(14.4px, 4.8vw, 21.6px); }
				.p-treatment .menu-list li .txt {
						padding: 8vw 6.4vw; }
						.p-treatment .menu-list li .txt__wrap {
								margin-top: 12.8vw; }
						.p-treatment .menu-list li .txt h6 {
								font-size: clamp(12.8px, 4.267vw, 19.2px);
								margin-bottom: 4.267vw; }
						.p-treatment .menu-list li .txt p {
								font-size: clamp(11.2px, 3.733vw, 16.8px); } }

/*=======================================
fees
=========================================*/
.p-fees .attention p {
		font-weight: 400;
		line-height: 200%;
		color: #333; }

.p-fees__wrap {
		padding-top: 6.857vw; }

.p-fees__content {
		width: 79.571vw;
		margin: 0 auto; }

.p-fees .fees-list {
		background-color: #FFF;
		border-radius: 2.143vw; }
		.p-fees .fees-list li {
				padding: 4.286vw;
				border-top: 1px solid #F9F9F9; }
				.p-fees .fees-list li:first-child {
						border-top: initial; }
				.p-fees .fees-list li .inner {
						display: flex; }
				.p-fees .fees-list li .ttl {
						width: 200px; }
						.p-fees .fees-list li .ttl h5 {
								font-size: clamp(14.4px, 1.286vw, 21.6px);
								line-height: 150%;
								font-weight: 600;
								color: #3C8CB4; }
				.p-fees .fees-list li .table {
						width: 73.44%;
						margin-left: auto; }
						.p-fees .fees-list li .table-bg {
								padding: 2.857vw;
								border-radius: 2.143vw;
								background-color: #F9F9F9; }
						.p-fees .fees-list li .table__wrap {
								margin-top: 4.286vw; }
								.p-fees .fees-list li .table__wrap:nth-child(1) {
										margin-top: initial; }
						.p-fees .fees-list li .table table {
								width: 100%; }
								.p-fees .fees-list li .table table tr:last-child td {
										border-bottom: 1px solid rgba(28, 28, 28, 0.15); }
								.p-fees .fees-list li .table table tr td {
										padding: 1.143vw;
										border-top: 1px solid rgba(28, 28, 28, 0.15); }
										.p-fees .fees-list li .table table tr td:first-child {
												font-size: clamp(12px, 1.071vw, 18px);
												line-height: 125%;
												font-weight: 600; }
										.p-fees .fees-list li .table table tr td:last-child {
												font-size: clamp(12.8px, 1.143vw, 19.2px);
												line-height: 125%;
												font-weight: 500;
												font-family: "Manrope", "Zen Kaku Gothic New", sans-serif;
												text-align: right; }
												.p-fees .fees-list li .table table tr td:last-child span.sml {
														font-size: clamp(10.4px, 0.929vw, 15.6px);
														line-height: 125%;
														font-weight: 600;
														font-family: "Zen Kaku Gothic New", "Roboto", Helvetica, "Noto Sans JP", "ヒラギノ角ゴPro W3", "Hiragino Kaku Gothic Pro", "游ゴシック体", YuGothic, "小塚ゴシック Pro L", "Kozuka Gothic Pro Light", "メイリオ", Meiryo, "ＭＳ　Ｐゴシック", "MS PGothic", sans-serif; }
						.p-fees .fees-list li .table h6 {
								font-size: clamp(12px, 1.071vw, 18px);
								line-height: 150%;
								font-weight: 600;
								color: #3C8CB4;
								padding-left: 1.214vw;
								margin-bottom: 2.143vw;
								position: relative; }
								.p-fees .fees-list li .table h6::before {
										content: "";
										width: 5px;
										height: 5px;
										background-color: #3C8CB4;
										border-radius: 50%;
										position: absolute;
										top: 0;
										bottom: 0;
										left: 0;
										margin: auto; }
						.p-fees .fees-list li .table .img {
								display: flex;
								align-items: center;
								margin-bottom: 1.143vw; }
								.p-fees .fees-list li .table .img img {
										width: 80px;
										vertical-align: middle; }
								.p-fees .fees-list li .table .img p.imgtxt {
										font-size: clamp(12px, 1.071vw, 18px);
										line-height: 150%;
										font-weight: 600;
										margin-left: 1.143vw; }
						.p-fees .fees-list li .table p.subtxt {
								font-size: clamp(12px, 1.071vw, 18px);
								line-height: 200%;
								font-weight: 400;
								margin-bottom: 2.143vw; }
						.p-fees .fees-list li .table p.untxt {
								font-size: clamp(10.4px, 0.929vw, 15.6px);
								line-height: 200%;
								font-weight: 400;
								margin-top: 1.143vw; }

/* ----------------------------- スマホ */
@media screen and (max-width: 767px) {
		.p-fees .attention {
				padding: 0 5.333vw;
				margin-top: 9.6vw;
				text-align: center; }
		.p-fees__wrap {
				padding-top: 12.8vw; }
		.p-fees__content {
				width: auto; }
		.p-fees .fees-list {
				border-radius: 8vw; }
				.p-fees .fees-list li {
						padding: 10.667vw 5.333vw; }
						.p-fees .fees-list li .inner {
								display: block; }
						.p-fees .fees-list li .ttl {
								width: auto;
								text-align: center;
								margin-bottom: 8vw; }
								.p-fees .fees-list li .ttl h5 {
										font-size: clamp(14.4px, 4.8vw, 21.6px); }
						.p-fees .fees-list li .table {
								width: auto; }
								.p-fees .fees-list li .table-bg {
										padding: 10.667vw 5.333vw;
										border-radius: 8vw; }
								.p-fees .fees-list li .table__wrap {
										margin-top: 12.8vw; }
								.p-fees .fees-list li .table table tr {
										display: block;
										padding: 4.267vw 2.133vw;
										border-top: 1px solid rgba(28, 28, 28, 0.15); }
										.p-fees .fees-list li .table table tr:last-child {
												border-bottom: 1px solid rgba(28, 28, 28, 0.15); }
										.p-fees .fees-list li .table table tr td {
												display: block;
												border: none !important;
												text-align: left !important;
												padding: initial !important; }
												.p-fees .fees-list li .table table tr td:first-child {
														font-size: clamp(12px, 4vw, 18px); }
												.p-fees .fees-list li .table table tr td:last-child {
														font-size: clamp(12.8px, 4.267vw, 19.2px);
														margin-top: 4.267vw; }
														.p-fees .fees-list li .table table tr td:last-child span.sml {
																font-size: clamp(10.4px, 3.467vw, 15.6px); }
								.p-fees .fees-list li .table h6 {
										font-size: clamp(12px, 4vw, 18px);
										padding-left: 17px;
										margin-bottom: 5.333vw; }
								.p-fees .fees-list li .table .img {
										margin-bottom: 4.267vw; }
										.p-fees .fees-list li .table .img p.imgtxt {
												font-size: clamp(12px, 4vw, 18px);
												margin-left: 4.267vw; }
								.p-fees .fees-list li .table p.subtxt {
										font-size: clamp(11.2px, 3.733vw, 16.8px);
										margin-bottom: 8vw; }
								.p-fees .fees-list li .table p.untxt {
										font-size: clamp(10.4px, 3.467vw, 15.6px);
										margin-top: 4.267vw; } }

/*=======================================
facilitystandards detail
=========================================*/
.p-facilitystandards__wrap {
		margin-top: 5.714vw; }

.p-facilitystandards__content {
		max-width: 1000px;
		margin: 0 auto;
		padding: 0 2.857vw; }
		.p-facilitystandards__content__txt .txt__wrap {
				margin-top: 1.429vw; }
		.p-facilitystandards__content__txt h5 {
				font-size: clamp(14.4px, 1.286vw, 21.6px);
				line-height: 200%;
				font-weight: 600;
				margin-top: 1.429vw; }
				.p-facilitystandards__content__txt h5:first-child {
						margin-top: initial; }
		.p-facilitystandards__content__txt p {
				font-size: clamp(12.8px, 1.143vw, 19.2px);
				line-height: 200%;
				font-weight: 400; }
		.p-facilitystandards__content__txt a {
				display: block;
				font-size: clamp(12.8px, 1.143vw, 19.2px);
				line-height: 200%;
				font-weight: 400;
				width: fit-content; }

/* ----------------------------- スマホ */
@media screen and (max-width: 767px) {
		.p-facilitystandards__wrap {
				margin-top: 16vw; }
		.p-facilitystandards__content {
				padding: 0 8vw; }
				.p-facilitystandards__content__txt .txt__wrap {
						margin-top: 5.333vw; }
				.p-facilitystandards__content__txt h5 {
						font-size: clamp(12.8px, 4.267vw, 19.2px);
						margin-top: 5.333vw; }
				.p-facilitystandards__content__txt p {
						font-size: clamp(11.2px, 3.733vw, 16.8px); } }

/* ----------------------------- スマホ */
@media screen and (max-width: 767px) {
		body {
				line-height: 160%;
				min-width: initial; }
		.container,
		.container-750 {
				max-width: initial; }
		.u-gap {
				padding-top: 45px;
				padding-bottom: 45px; }
		.sidebar-right,
		.sidebar-left {
				margin-bottom: 30px; }
				.sidebar-right__content, .sidebar-right__sidebar,
				.sidebar-left__content,
				.sidebar-left__sidebar {
						float: none;
						width: auto; }
				.sidebar-right__content,
				.sidebar-left__content {
						margin-bottom: 60px; }
				.sidebar-right-over,
				.sidebar-left-over {
						margin-bottom: 30px; }
						.sidebar-right-over__content, .sidebar-right-over__sidebar,
						.sidebar-left-over__content,
						.sidebar-left-over__sidebar {
								float: none;
								width: auto; }
						.sidebar-right-over__conten,
						.sidebar-left-over__conten {
								margin-bottom: 60px; }
						.sidebar-right-over__sidebar,
						.sidebar-left-over__sidebar {
								padding-right: 0; }
		.col2 > div,
		.col2 > li {
				float: none;
				width: auto;
				margin-left: 0;
				margin-bottom: 20px; }
		.col3 > div,
		.col3 > li {
				width: auto;
				margin-left: 0;
				margin-bottom: 20px; }
				.col3 > div:nth-child(3n+1),
				.col3 > li:nth-child(3n+1) {
						clear: none;
						margin-left: 3%; }
				.col3 > div:nth-child(2n+1),
				.col3 > li:nth-child(2n+1) {
						clear: both;
						margin-left: 0; }
		.col4 > div,
		.col4 > li {
				width: 48.5%;
				margin-left: 3%;
				margin-bottom: 20px; }
				.col4 > div:nth-child(2n+1),
				.col4 > li:nth-child(2n+1) {
						clear: both;
						margin-left: 0; }
		.c-btn1,
		.c-btn2,
		.c-btn3,
		.c-btn4,
		.c-btn5,
		.c-btn6 {
				margin-top: 30px; }
		.c-title1 {
				font-size: 26px;
				font-size: 2.6rem;
				margin-bottom: 25px; }
		.c-title2 {
				font-size: 20px;
				font-size: 2rem;
				margin-bottom: 25px; }
		.c-title3 {
				font-size: 18px;
				font-size: 1.8rem;
				margin-bottom: 15px; }
		.c-title6 {
				font-size: 24px;
				font-size: 2.4rem;
				margin-bottom: 20px; }
		.c-titleCombo {
				margin-bottom: 25px; }
				.c-titleCombo > * {
						margin-right: 18px; }
				.c-titleCombo [class*="c-btn"] {
						margin-top: 0; }
				.c-titleCombo [class*="c-title"] {
						margin-bottom: 0; }
		.c-list1 {
				margin-top: 30px;
				margin-bottom: 30px; }
				.c-list1 li {
						float: none;
						width: auto;
						margin-left: 0;
						margin-bottom: 30px; }
						.c-list1 li:last-child {
								margin-bottom: 0; }
						.c-list1 li .title {
								font-size: 22px;
								font-size: 2.2rem; }
		.c-list2 {
				margin-top: 30px;
				margin-bottom: 30px; }
				.c-list2 li {
						margin-bottom: 20px; }
						.c-list2 li .img1,
						.c-list2 li .box1 {
								display: block;
								width: auto; }
						.c-list2 li .img1 {
								text-align: center;
								margin-bottom: 15px;
								margin-right: 0; }
						.c-list2 li .title {
								font-size: 22px;
								font-size: 2.2rem; }
		.c-list3 {
				margin-top: 30px;
				margin-bottom: 30px; }
				.c-list3 li {
						padding-bottom: 18px;
						margin-bottom: 18px; }
						.c-list3 li .img1,
						.c-list3 li .box1 {
								float: none;
								width: auto; }
						.c-list3 li .img1 {
								text-align: center;
								margin-bottom: 15px; }
								.c-list3 li .img1 img {
										width: 100%; }
		.c-list4 li {
				float: left;
				width: auto;
				margin-left: 0;
				margin-bottom: 15px; }
				.c-list4 li .img1 {
						text-align: center; }
						.c-list4 li .img1 img {
								width: 100%; }
		.c-list5 li {
				float: none;
				width: auto;
				margin-left: 0;
				margin-bottom: 30px; }
				.c-list5 li .img1 {
						text-align: center; }
						.c-list5 li .img1 img {
								width: 100%; }
		.c-list5__col2 li {
				width: auto;
				margin-left: 0; }
				.c-list5__col2 li:nth-child(3n+1) {
						margin-left: 0; }
		.c-list6 {
				margin-bottom: 30px; }
				.c-list6 li .title {
						display: block;
						max-width: initial;
						margin-top: 5px; }
		.c-list7 {
				margin-bottom: 30px; }
		.c-list8 li {
				padding-bottom: 18px;
				margin-bottom: 18px; }
				.c-list8 li .img1 {
						text-align: center;
						margin-bottom: 10px; }
						.c-list8 li .img1 img {
								width: 100%; }
				.c-list8 li .box1 .date {
						vertical-align: -1px; }
		.c-card1 {
				margin-left: 10px !important;
				margin-right: 10px; }
				.c-card1 .img1 {
						text-align: center; }
						.c-card1 .img1 img {
								width: 100%; }
		.c-map1,
		.c-map2,
		.c-map3 {
				margin-bottom: 20px;
				position: relative;
				padding-bottom: 56.25%;
				height: 0;
				overflow: hidden; }
				.c-map1 iframe,
				.c-map1 object,
				.c-map1 embed,
				.c-map2 iframe,
				.c-map2 object,
				.c-map2 embed,
				.c-map3 iframe,
				.c-map3 object,
				.c-map3 embed {
						position: absolute;
						top: 0;
						left: 0;
						width: 100%;
						height: 100%; }
		.c-calender1 {
				padding: 15px;
				margin-bottom: 30px; }
		.c-calender2 {
				margin-bottom: 30px; }
		.c-table1 thead th {
				min-width: 80px; }
		.c-table1 th,
		.c-table1 td {
				padding: 10px 12px;
				word-break: break-all;
				-webkit-box-sizing: border-box;
				-moz-box-sizing: border-box;
				box-sizing: border-box; }
		.c-table1__fixed th {
				width: auto; }
		.c-tab1__field li {
				font-size: 16px;
				font-size: 1.6rem;
				padding-top: 15px;
				padding-bottom: 15px; }
		.c-tab1__content {
				padding: 20px 15px 30px; }
		.c-policy1 {
				max-height: 250px; }
				.c-policy1-wrap {
						padding: 15px; }
		.c-accordion1 {
				margin-bottom: 30px; }
				.c-accordion1 dl {
						padding-left: 15px;
						padding-right: 15px; }
				.c-accordion1 dt {
						padding-top: 15px;
						padding-bottom: 10px; }
						.c-accordion1 dt .q {
								font-size: 18px;
								font-size: 1.8rem;
								width: 40px; }
						.c-accordion1 dt .question {
								width: calc(100% - 60px);
								background-size: 12px auto;
								padding-right: 20px; }
				.c-accordion1 dd {
						padding-top: 15px;
						padding-bottom: 15px; }
						.c-accordion1 dd .a {
								font-size: 18px;
								font-size: 1.8rem;
								width: 40px; }
						.c-accordion1 dd .answer {
								width: calc(100% - 60px); }
		.c-kv1 {
				padding: 160px 15px 100px; }
				.c-kv1 .title {
						font-size: 38px;
						font-size: 3.8rem;
						margin-bottom: 20px; }
		.c-kv2 {
				padding-top: 160px;
				padding-bottom: 100px;
				margin-bottom: 25px; }
				.c-kv2:before {
						width: 85%; }
				.c-kv2 .title {
						font-size: 38px;
						font-size: 3.8rem;
						margin-bottom: 20px; }
				.c-kv2__video .mbYTP_wrapper {
						min-width: 85% !important; }
		.c-kv3 {
				padding: 160px 15px 100px; }
				.c-kv3 .title {
						font-size: 38px;
						font-size: 3.8rem;
						margin-bottom: 20px; }
		.c-pagination span.current:before,
		.c-pagination a.page:hover:before {
				bottom: -8px;
				width: 6px;
				height: 6px;
				margin-left: -3px; }
		.container {
				padding-left: 15px;
				padding-right: 15px; }
				.container [class*="container"] {
						padding-left: 0;
						padding-right: 0; }
		.js-table-xscroll__wrap {
				width: 100%;
				overflow-x: auto; }
		.js-table-xscroll__in {
				width: 1000px; } }
