@charset "UTF-8";
/*
Theme Name: ambitious_niigata_2510
*/
/* ----------------------------- リセット */
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 {
		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: 150%; }
		#entrybody ul, #entrybody ol {
				margin-top: 40px;
				margin-bottom: 40px;
				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 ol li {
						font-size: 16px;
						font-size: 1.6rem;
						line-height: 2; }
						#entrybody ol li a {
								text-decoration: underline; }
		#entrybody ul {
				list-style-type: disc; }
				#entrybody ul li {
						font-size: 16px;
						font-size: 1.6rem;
						line-height: 2;
						list-style-position: inside; }
						#entrybody ul li a {
								text-decoration: underline; }
		#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: 16px;
				font-size: 1.6rem;
				line-height: 2;
				margin-top: 40px;
				margin-bottom: 40px; }
		#entrybody a {
				cursor: pointer; }
		#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 .wp-block-image {
				margin-top: 48px; }
		#entrybody hr {
				margin: 48px 0; }
		#entrybody .wp-block-separator {
				border-top: 1px solid #CCC; }
		#entrybody .has-text-color.wp-elements-7315c95155b2dee91cee2a4793184e4e {
				color: #000000; }
		#entrybody .has-text-color.wp-elements-c46c3e9139c23e3c47cfb58e6c392dd8 {
				color: #abb8c3; }
		#entrybody .has-text-color.wp-elements-f57bfdee71cfc1daf92e2f9aeee30553 {
				color: #FFF; }
		#entrybody .wp-element-caption {
				font-size: 14px;
				font-size: 1.4rem;
				line-height: 150%;
				font-weight: 400;
				margin-top: 16px; }
		#entrybody .wp-block-gallery {
				display: flex;
				flex-wrap: wrap;
				margin: 48px 0; }
				#entrybody .wp-block-gallery img {
						margin-top: 0; }
				#entrybody .wp-block-gallery.columns-2 .wp-block-image {
						width: 48%;
						margin-top: 28px; }
						#entrybody .wp-block-gallery.columns-2 .wp-block-image:nth-child(1), #entrybody .wp-block-gallery.columns-2 .wp-block-image:nth-child(2) {
								margin-top: initial; }
						#entrybody .wp-block-gallery.columns-2 .wp-block-image:nth-child(odd) {
								margin-right: auto; }
						#entrybody .wp-block-gallery.columns-2 .wp-block-image:nth-child(even) {
								margin-left: auto; }
		#entrybody .wp-block-columns {
				margin: 60px 0; }
				#entrybody .wp-block-columns::before, #entrybody .wp-block-columns::after {
						display: none !important; }
				#entrybody .wp-block-columns .wp-block-image {
						margin-top: initial;
						margin-bottom: initial; }
		#entrybody .wp-block-button__link {
				display: block;
				font-size: 16px;
				font-size: 1.6rem;
				line-height: 150%;
				font-weight: 500;
				color: #1F1F1D;
				padding: 16px 56px 16px 16px;
				border: 1px solid rgba(28, 29, 31, 0.2);
				background-image: url(../img/arrow-right.svg);
				background-position: center right 16px;
				background-size: 20px;
				background-repeat: no-repeat;
				background-color: initial;
				border-radius: initial; }
		#entrybody .is-type-video {
				max-width: 750px;
				margin: 48px auto; }
				#entrybody .is-type-video iframe {
						width: 100%;
						height: 100%;
						aspect-ratio: 16 / 9; }
		#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: 28px;
				font-size: 2.8rem;
				line-height: 150%;
				font-weight: 700;
				margin-top: 72px;
				margin-bottom: 40px; }
		#entrybody h3 {
				font-size: 21px;
				font-size: 2.1rem;
				line-height: 150%;
				margin-top: 60px;
				margin-bottom: 40px; }
		#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: #313131;
						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; }
		#entrybody .is-layout-flex {
				display: flex; }
				#entrybody .is-layout-flex h3 {
						margin-top: initial;
						margin-bottom: 40px; }
				#entrybody .is-layout-flex p {
						margin-top: initial;
						margin-bottom: 40px; }
				#entrybody .is-layout-flex img {
						margin-top: initial; }
				#entrybody .is-layout-flex .is-layout-flow {
						width: 46%; }
						#entrybody .is-layout-flex .is-layout-flow:nth-child(odd) {
								margin-right: auto; }
						#entrybody .is-layout-flex .is-layout-flow:nth-child(even) {
								margin-left: auto; }

.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 p {
				font-size: 14px;
				font-size: 1.4rem;
				margin-top: initial;
				margin-bottom: 30px; }
		#entrybody h2 {
				font-size: 20px;
				font-size: 2rem;
				margin-top: 60px; }
		#entrybody h3 {
				font-size: 18px;
				font-size: 1.8rem;
				margin-top: 40px;
				margin-bottom: 30px; }
		#entrybody h4 {
				font-size: 16px;
				font-size: 1.6rem; }
		#entrybody h5 {
				font-size: 15px;
				font-size: 1.5rem; }
		#entrybody h6 {
				font-size: 14px;
				font-size: 1.4rem; }
		#entrybody ol li {
				font-size: 14px;
				font-size: 1.4rem; }
		#entrybody ul li {
				font-size: 14px;
				font-size: 1.4rem; }
		#entrybody hr {
				margin: 40px 0; }
		#entrybody .wp-block-image {
				margin-top: 40px;
				margin-bottom: 40px; }
		#entrybody .wp-element-caption {
				font-size: 12px;
				font-size: 1.2rem;
				margin-top: 12px; }
		#entrybody .wp-block-button__link {
				font-size: 14px;
				font-size: 1.4rem; }
		#entrybody .is-layout-flex p {
				margin-bottom: 30px; }
		#entrybody .wp-block-columns {
				margin: 40px 0; } }

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

body {
		font-size: 16px;
		font-size: 1.6rem;
		font-family: "YuGothic", "游ゴシック", "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Hiragino Sans", "Meiryo", sans-serif;
		min-width: 1020px;
		position: relative;
		color: #313131;
		background-color: #fff;
		font-weight: 500;
		line-height: 150%;
		-webkit-text-size-adjust: 100%;
		font-feature-settings: 'palt';
		font-size: max(10px, 0.7142857153vw); }

.en {
		font-family: "Roboto", sans-serif; }

.noto {
		font-family: "Noto Sans", sans-serif; }

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

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

::-placeholder {
		color: #C3C5C6; }

a {
		/*
	&:hover {@include opacity;}
	*/ }
		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; }

@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; }

.link1 a {
		font-size: 15px;
		font-size: 1.5rem;
		line-height: 150%;
		color: #FFF;
		background-color: #313131;
		text-decoration: none;
		padding: 12px 20px; }
		.link1 a img {
				width: 16px;
				margin-left: 20px;
				vertical-align: middle; }

.link-y a {
		font-size: 16px;
		font-size: 1.6rem;
		line-height: 150%;
		font-weight: 700;
		color: #313131;
		background-color: #FADB55;
		text-decoration: none;
		padding: 15px 10px 15px 20px;
		display: inline-block;
		border-radius: 4px;
		width: 170px;
		text-align: center; }
		.link-y a span {
				padding-right: 12px;
				margin-right: 12px;
				position: relative;
				display: inline-block; }
				.link-y a span::before {
						content: "";
						width: 1px;
						height: 12px;
						background-color: rgba(49, 49, 49, 0.15);
						position: absolute;
						right: 0;
						top: 0;
						bottom: 0;
						margin: auto;
						background-color: white; }
		.link-y a .icon {
				width: 16px;
				height: 16px;
				display: inline-block;
				position: relative;
				overflow: hidden;
				line-height: 100%;
				top: 2px;
				left: -2px; }
				.link-y a .icon img {
						width: 16px;
						height: 16px; }
				.link-y a .icon .side1 {
						left: 0;
						transition: all ease .25s;
						position: absolute; }
				.link-y a .icon .side2 {
						left: -36px;
						transition: all ease .25s;
						position: absolute; }
				.link-y a .icon .ts1 {
						top: 0;
						left: 0;
						transition: all ease .25s;
						position: absolute; }
				.link-y a .icon .ts2 {
						top: 36px;
						left: -36px;
						transition: all ease .25s;
						position: absolute; }
				.link-y a .icon .top1 {
						top: 0;
						left: 0;
						transition: all ease .25s;
						position: absolute; }
				.link-y a .icon .top2 {
						top: 36px;
						left: 0;
						transition: all ease .25s;
						position: absolute; }
		.link-y a:hover .side1 {
				left: 36px; }
		.link-y a:hover .side2 {
				left: 0; }
		.link-y a:hover .ts1 {
				top: -36px;
				left: 36px; }
		.link-y a:hover .ts2 {
				top: 0;
				left: 0; }
		.link-y a:hover .top1 {
				top: -36px; }
		.link-y a:hover .top2 {
				top: 0; }

.link-b a {
		font-size: 16px;
		font-size: 1.6rem;
		line-height: 150%;
		font-weight: 700;
		color: #FFF;
		background-color: #313131;
		text-decoration: none;
		padding: 15px 10px 15px 20px;
		display: inline-block;
		border-radius: 4px;
		width: auto;
		text-align: center; }
		.link-b a span {
				padding-right: 12px;
				margin-right: 12px;
				position: relative;
				display: inline-block; }
				.link-b a span::before {
						content: "";
						width: 1px;
						height: 12px;
						background-color: rgba(49, 49, 49, 0.15);
						position: absolute;
						right: 0;
						top: 0;
						bottom: 0;
						margin: auto;
						background-color: white; }
		.link-b a .icon {
				width: 16px;
				height: 16px;
				display: inline-block;
				position: relative;
				overflow: hidden;
				line-height: 100%;
				top: 2px; }
				.link-b a .icon img {
						width: 16px;
						height: 16px; }
				.link-b a .icon .side1 {
						left: 0;
						transition: all ease .25s;
						position: absolute; }
				.link-b a .icon .side2 {
						left: -36px;
						transition: all ease .25s;
						position: absolute; }
		.link-b a:hover .side1 {
				left: 36px; }
		.link-b a:hover .side2 {
				left: 0; }

.abutton {
		display: block; }
		.abutton::before, .abutton::after {
				content: none; }
		.abutton a {
				font-weight: bold;
				width: fit-content;
				height: 54px;
				height: auto;
				display: flex;
				align-items: center;
				justify-content: center;
				gap: 1.2rem;
				font-size: 1.5rem;
				background-color: #313131;
				padding: 1.5rem 1rem 1.5rem 2rem;
				border-radius: 3px;
				color: #fff;
				box-sizing: border-box;
				text-decoration: none;
				transition: .2s; }
				.abutton a .line {
						height: 12px;
						width: 1px;
						background-color: rgba(255, 255, 255, 0.15); }
				.abutton a .icon {
						display: flex;
						align-items: center;
						justify-content: center;
						width: 16px;
						height: 16px;
						overflow: hidden; }
						.abutton a .icon img {
								display: block;
								width: 16px;
								height: auto;
								transition: .2s; }
				.abutton a:hover .icon img {
						animation: arrow-slide .3s; }
		.abutton.s a:hover .icon img {
				animation: arrow-slide 0.3s !important; }

@keyframes arrow-slide {
		0% {
				transform: translateX(0); }
		40% {
				transform: translateX(100%);
				opacity: 0; }
		41% {
				transform: translateX(-100%);
				opacity: 0; }
		100% {
				transform: translateX(0);
				opacity: 1; } }

.abutton.external_link.ar a:hover .icon img {
		animation: arrow-right-slide .3s; }

@keyframes arrow-right-slide {
		0% {
				transform: translate(0, 0) rotate(0deg);
				opacity: 1; }
		40% {
				transform: translate(80%, -80%) rotate(0deg);
				opacity: 0; }
		41% {
				transform: translate(-80%, 80%) rotate(0deg);
				opacity: 0; }
		100% {
				transform: translate(0, 0) rotate(0deg);
				opacity: 1; } }

.abutton.yellow a {
		background-color: #FADB55;
		color: #313131; }
		.abutton.yellow a .line {
				height: 12px;
				width: 1px;
				background-color: rgba(49, 49, 49, 0.15); }
		.abutton.yellow a .icon {
				overflow: hidden;
				display: flex;
				align-items: center;
				justify-content: center;
				width: 18px;
				height: 18px; }
				.abutton.yellow a .icon.pdf {
						width: 20px;
						height: 20px; }
						.abutton.yellow a .icon.pdf img {
								width: 18px; }
				.abutton.yellow a .icon img {
						display: block;
						width: 18px;
						height: auto;
						transition: .3s; }
		.abutton.yellow a:hover .icon img {
				animation: arrow-slide-vertical .3s; }

@keyframes arrow-slide-vertical {
		0% {
				transform: translateY(0);
				opacity: 1; }
		50% {
				transform: translateY(-100%);
				opacity: 0; }
		51% {
				transform: translateY(100%);
				opacity: 0; }
		100% {
				transform: translateY(0);
				opacity: 1; } }

/* ----------------------------- 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: #313131; }
		.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: "YuGothic", "游ゴシック", "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Hiragino Sans", "Meiryo", 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; }

.container1 {
		width: 78.142857%;
		margin: 0 auto; }

.container2 {
		width: 89.7%;
		margin: 0 auto; }
		.container2__wrap {
				display: flex; }
		.container2 .l {
				flex: 1; }
		.container2 .r {
				flex: 0 0 65.6%; }
		.container2__ttl h3 {
				font-size: 40px;
				font-size: 4rem;
				line-height: 125%;
				font-weight: 700; }
		.container2__ttl p.en {
				font-size: 14px;
				font-size: 1.4rem;
				line-height: 125%;
				font-weight: 400;
				margin-bottom: 20px; }
		.container2 .sub {
				margin-bottom: 60px; }
				.container2 .sub p.en {
						font-size: 18px;
						font-size: 1.8rem;
						line-height: 175%;
						font-weight: 400;
						margin-bottom: 30px; }
				.container2 .sub h3 {
						font-size: 36px;
						font-size: 3.6rem;
						line-height: 150%;
						font-weight: 700; }

.container3 {
		width: 89.714285%;
		margin: 0 auto; }
		.container3__wrap {
				display: flex; }
		.container3 .l {
				width: 39.8089%; }
		.container3 .r {
				width: 57.0063%;
				margin-left: auto; }
		.container3__ttl h3 {
				font-size: 30px;
				font-size: 3rem;
				line-height: 125%;
				font-weight: 700; }
		.container3__ttl p.en {
				font-size: 14px;
				font-size: 1.4rem;
				line-height: 125%;
				font-weight: 400;
				margin-bottom: 20px; }

.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: #FFF;
				border-color: #FFF; }
		.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: #FFF !important;
				color: #FFF !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: #FFF;
				border-color: #FFF; }
		.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: #FFF !important;
				color: #FFF !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: #FFF;
				border-color: #FFF; }
		.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: #FFF !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: #FFF;
				border-color: #FFF; }
		.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: #FFF !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-title3 {
		font-size: 26px;
		font-size: 2.6rem;
		line-height: 146%;
		font-weight: bold;
		margin-bottom: 20px; }
		.c-title3__alt {
				color: #fff; }

.c-title4 {
		font-size: 18px;
		font-size: 1.8rem;
		line-height: 160%;
		font-weight: bold;
		padding-bottom: 10px;
		margin-bottom: 20px;
		display: inline-block;
		*display: inline;
		*zoom: 1;
		border-bottom: 2px solid #313131; }
		.c-title4__alt {
				color: #fff; }

.c-title5 {
		font-size: 16px;
		font-size: 1.6rem;
		font-weight: normal;
		border-left: 4px solid #333;
		line-height: 150%;
		margin-bottom: 20px;
		padding-left: 10px; }

.c-title6 {
		font-size: 34px;
		font-size: 3.4rem;
		font-weight: bold;
		line-height: 130%;
		margin-bottom: 30px; }
		.c-title6 span {
				display: inline-block;
				*display: inline;
				*zoom: 1;
				vertical-align: middle;
				font-size: 12px;
				font-size: 1.2rem;
				margin-left: 10px;
				font-weight: normal; }

.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: #FADB55;
		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: #FFF;
		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: #FFF; }
		.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: #FFF; }
		.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: #FFF;
						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: #313131;
				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: #313131;
						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: #313131;
		font-size: 12px;
		font-size: 1.2rem;
		padding: 16px 15px 14px;
		line-height: 160%; }
		.c-spin1 input[type="number"]:focus {
				border-color: #313131;
				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: #313131;
				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: #313131;
				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: #313131;
				font-size: 12px;
				font-size: 1.2rem;
				padding: 16px 15px 14px;
				line-height: 160%;
				-webkit-apparance: none; }
				.c-dropdown1 select:focus {
						border-color: #313131;
						outline: 0; }

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

.table1 {
		width: 100%; }
		.table1 tr {
				border-top: 1px solid rgba(49, 49, 49, 0.15); }
				.table1 tr:last-child {
						border-bottom: 1px solid rgba(49, 49, 49, 0.15); }
				.table1 tr th, .table1 tr td {
						font-size: 16px;
						font-size: 1.6rem;
						line-height: 150%;
						padding: 30px 0; }
				.table1 tr th {
						font-weight: 700;
						width: 23.175%;
						text-align: left; }
				.table1 tr td {
						font-weight: 500; }

.table2 {
		width: 100%;
		background-color: #F2F5E4; }
		.table2 tr {
				border-top: 1px solid rgba(49, 49, 49, 0.15); }
				.table2 tr:last-child {
						border-bottom: 1px solid rgba(49, 49, 49, 0.15); }
				.table2 tr td {
						font-size: 16px;
						font-size: 1.6rem;
						line-height: 150%;
						font-weight: 500;
						padding: 16px 20px;
						border-left: 1px solid rgba(49, 49, 49, 0.15);
						border-right: 1px solid rgba(49, 49, 49, 0.15); }

.table3 {
		width: 100%; }
		.table3 tr:first-child td {
				padding-top: initial; }
		.table3 tr td {
				font-size: 20px;
				font-size: 2rem;
				line-height: 200%;
				font-weight: 700;
				padding-top: 48px; }
				.table3 tr td span {
						font-size: 15px;
						font-size: 1.5rem;
						line-height: 150%;
						font-weight: 500;
						margin-top: 18px;
						display: block; }

.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: #FFF; }
		.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 #313131; }
		.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: #313131;
						color: #fff;
						border-color: #313131; }

.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: #FFF;
						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: #FFF;
						width: 78px;
						padding-top: 8px; }
				.c-accordion1 dd .answer {
						width: calc(100% - 78px); }

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

.mfp-bg {
		background: #313131 !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; }

.js-fadeup {
		opacity: 0;
		transform: translateY(20px);
		transition: opacity 0.4s ease, transform 0.4s ease; }
		.js-fadeup.is-inview {
				opacity: 1;
				transform: translateY(0); }
		.js-fadeup:nth-child(1) {
				transition-delay: 0s; }
		.js-fadeup:nth-child(2) {
				transition-delay: 0.1s; }
		.js-fadeup:nth-child(3) {
				transition-delay: 0.2s; }

/* ----------------------------- スマホ */
/* ----------------------------- 1. 各ページ共通 */
/*=======================================
ヘッダー
=========================================*/
.header__head {
		background-color: #f5f5f5;
		padding: 6px 30px 6px 2.142%;
		box-sizing: border-box; }
		.header__head ul {
				display: flex;
				column-gap: 20px;
				justify-content: flex-end; }
				.header__head ul li a {
						display: flex;
						column-gap: 4px;
						align-items: center;
						font-size: 1.1rem;
						text-decoration: none;
						position: relative;
						color: 313131; }
						.header__head ul li a::after {
								content: "";
								position: absolute;
								left: 0;
								bottom: 0;
								width: 0;
								height: 1px;
								background-color: rgba(49, 49, 49, 0.5);
								transition: width 0.2s; }
						.header__head ul li a:hover::after {
								width: 100%; }

.c-header1 {
		width: 95.714%;
		padding: 16px 0 20px;
		margin-inline: 2.142%;
		top: 0;
		z-index: 0;
		display: flex;
		align-items: center;
		/*
	position: sticky;
	top: 0;
	*/ }
		.c-header1__logo {
				width: 248px; }
				.c-header1__logo a {
						display: block; }
		.c-header1__btn {
				max-width: 50%;
				float: right;
				cursor: pointer;
				position: fixed;
				top: 43px;
				top: 60px;
				right: 30px;
				z-index: 10;
				-webkit-box-sizing: border-box;
				-moz-box-sizing: border-box;
				box-sizing: border-box; }
				.c-header1__btn span {
						display: inline-block;
						*display: inline;
						*zoom: 1;
						width: 18px;
						height: 2px;
						background: #313131;
						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; }
						.c-header1__btn span:before, .c-header1__btn span:after {
								content: "";
								display: block;
								position: absolute;
								width: 100%;
								height: 2px;
								background: #313131;
								-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: 3px; }
						.c-header1__btn span:before {
								top: -6px; }
						.c-header1__btn span:after {
								bottom: -6px; }
				.c-header1__btn.is-open span {
						background: rgba(0, 0, 0, 0); }
						.c-header1__btn.is-open span:before {
								-webkit-transform: rotate(45deg);
								-moz-transform: rotate(45deg);
								transform: rotate(45deg);
								transform-origin: center;
								top: 0;
								background: #FFF; }
						.c-header1__btn.is-open span:after {
								-webkit-transform: rotate(-45deg);
								-moz-transform: rotate(-45deg);
								transform: rotate(-45deg);
								transform-origin: center;
								bottom: 0;
								background: #FFF; }
		.c-header1__menu {
				margin-left: auto;
				padding-right: 60px; }
		.c-header1__nav, .c-header1__contact {
				display: inline-block;
				*display: inline;
				*zoom: 1;
				vertical-align: middle;
				text-align: center; }
		.c-header1__contact.abutton a {
				padding: 9px 12px;
				font-size: 1.2rem; }
		.c-header1__nav li {
				display: inline-block;
				*display: inline;
				*zoom: 1;
				vertical-align: middle;
				font-size: 13px;
				font-size: 1.3rem;
				font-weight: bold;
				margin-right: 20px; }
				.c-header1__nav li:last-child {
						margin-right: 3.6rem; }
				.c-header1__nav li a {
						display: inline-block;
						color: #313131;
						text-decoration: none;
						position: relative;
						transition: opacity 0.3s ease; }
						.c-header1__nav li a::after {
								content: "";
								position: absolute;
								left: 0;
								bottom: 0;
								width: 0;
								height: 1px;
								background-color: rgba(49, 49, 49, 0.5);
								transition: width 0.3s; }
						.c-header1__nav li a:hover {
								opacity: 1; }
								.c-header1__nav li a:hover::after {
										width: 100%; }
				.c-header1__nav li.is-current a {
						border-bottom-color: #fff; }
				.c-header1__nav li.ml {
						margin-left: 8px; }
		.c-header1__nav .js-pulldown {
				position: relative;
				cursor: pointer;
				z-index: 5; }
		.c-header1__nav .js-pulldown__content {
				display: block;
				opacity: 0;
				visibility: hidden;
				transform: translateY(2px);
				transition: opacity 0.5s ease, transform 0.5s ease, visibility 0s linear 0.5s;
				position: absolute;
				z-index: 8;
				left: 0;
				top: 55px;
				width: max-content;
				background: #FFF;
				padding: 20px;
				border-radius: 14px; }
				.c-header1__nav .js-pulldown__content.is-active {
						opacity: 1;
						visibility: visible;
						transform: translateY(0);
						transition-delay: 0s; }
				.c-header1__nav .js-pulldown__content::before {
						content: "";
						position: absolute;
						top: -40px;
						left: 0;
						width: 100%;
						height: 40px; }
				.c-header1__nav .js-pulldown__content ul {
						display: flex; }
				.c-header1__nav .js-pulldown__content li {
						width: 200px;
						margin-left: 20px;
						margin-right: 0;
						text-align: left; }
						.c-header1__nav .js-pulldown__content li:first-child {
								margin-left: initial; }
						.c-header1__nav .js-pulldown__content li a {
								display: block;
								color: #313131;
								text-decoration: none;
								padding: initial;
								font-size: 13px;
								font-size: 1.3rem;
								line-height: 100%;
								font-weight: 700;
								color: #313131; }
								.c-header1__nav .js-pulldown__content li a span {
										display: block;
										font-size: 10px;
										font-size: 1rem;
										line-height: 100%;
										font-weight: 400;
										color: rgba(49, 49, 49, 0.7);
										margin: 8px 0 10px; }
								.c-header1__nav .js-pulldown__content li a img {
										transform: scale(1);
										transition: all ease .25s; }
								.c-header1__nav .js-pulldown__content li a:hover img {
										transform: scale(1.025); }
								.c-header1__nav .js-pulldown__content li a::after {
										content: none; }
		.c-header1 .link-y a {
				font-size: 13px;
				font-size: 1.3rem;
				font-weight: 700;
				line-height: 115%;
				padding: 9px 10px 9px 12px;
				width: 152px; }
		.c-header1 .md {
				display: none;
				position: fixed;
				top: 20px;
				right: 10px;
				z-index: 5;
				padding: 60px 21px 30px;
				-webkit-box-sizing: border-box;
				-moz-box-sizing: border-box;
				box-sizing: border-box;
				background: #242424;
				overflow: auto;
				border-radius: 20px;
				box-shadow: 0px 7px 20px 0px rgba(0, 0, 0, 0.08); }
				.c-header1 .md .c-header1__nav {
						margin-bottom: 36px;
						display: block; }
						.c-header1 .md .c-header1__nav li {
								display: block;
								margin-right: 0;
								font-size: 14px;
								font-size: 1.4rem;
								line-height: 100%;
								padding-top: 16px;
								padding-bottom: initial;
								text-align: left; }
								.c-header1 .md .c-header1__nav li:first-child {
										padding-top: initial; }
								.c-header1 .md .c-header1__nav li a {
										color: #FFF;
										padding: initial;
										text-decoration: none !important;
										width: fit-content; }
										.c-header1 .md .c-header1__nav li a:hover {
												color: #FADB55; }
								.c-header1 .md .c-header1__nav li.is-current a {
										border-left-color: #fff; }
								.c-header1 .md .c-header1__nav li.hn a:hover {
										color: #FFF; }
						.c-header1 .md .c-header1__nav .js-pulldown__content {
								padding-top: 25px; }
								.c-header1 .md .c-header1__nav .js-pulldown__content .c-title1 {
										font-size: 14px;
										font-size: 1.4rem;
										margin-bottom: 15px; }
								.c-header1 .md .c-header1__nav .js-pulldown__content li {
										float: none;
										width: auto;
										margin-left: 0; }
		.c-header1__instagram {
				margin-top: 36px; }
				.c-header1__instagram a {
						display: block;
						font-size: 12px;
						font-size: 1.2rem;
						line-height: 150%;
						font-weight: 500;
						color: #FFF;
						text-decoration: none;
						transition: all ease .25s;
						width: fit-content; }
						.c-header1__instagram a:hover {
								color: #FADB55; }

.js-overlay {
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background: rgba(0, 0, 0, 0.2);
		/* 黒＋透過50% */
		z-index: 5;
		display: none; }
		.js-overlay.is-active {
				display: block; }

/*=======================================
ページタイトル
=========================================*/
.c-page-toptitle1 {
		padding-top: 120px;
		position: relative; }
		.c-page-toptitle1__wrap {
				margin-inline: 5.142%;
				position: relative; }
		.c-page-toptitle1 h1 {
				font-size: 50px;
				font-size: 5rem;
				line-height: 140%;
				font-weight: 700; }
		.c-page-toptitle1 p {
				font-size: 17px;
				font-size: 1.7rem;
				line-height: 100%;
				font-weight: 500;
				margin-bottom: 20px; }
		.c-page-toptitle1 .img {
				margin-top: 60px; }
				.c-page-toptitle1 .img img {
						width: 100%; }
		.c-page-toptitle1 .c-page-nav {
				position: absolute;
				top: 0;
				right: 40px; }
				.c-page-toptitle1 .c-page-nav__wrap {
						background-color: #FFF;
						box-shadow: 0px 8px 20px rgba(0, 0, 0, 0.08);
						padding: 24px 30px 36px;
						border-radius: 4px; }
				.c-page-toptitle1 .c-page-nav ul li {
						width: 200px; }
						.c-page-toptitle1 .c-page-nav ul li a {
								font-size: 13px;
								font-size: 1.3rem;
								line-height: 150%;
								font-weight: 700;
								padding: 16px 0;
								border-bottom: 1px solid rgba(49, 49, 49, 0.15);
								text-decoration: none;
								display: block;
								transition: all ease .25s; }
								.c-page-toptitle1 .c-page-nav ul li a:hover {
										padding-left: 6px;
										border-bottom: 1px solid #313131; }
								.c-page-toptitle1 .c-page-nav ul li a img {
										float: right; }

/*=======================================
パンくず
=========================================*/
.c-breadcrumb1 {
		margin-bottom: 60px;
		font-size: 13px;
		font-size: 1.3rem;
		line-height: 160%; }
		.c-breadcrumb1 li {
				display: inline;
				color: #C3C5C6; }
				.c-breadcrumb1 li:before {
						content: "　＞　";
						display: inline;
						color: #313131; }
				.c-breadcrumb1 li a {
						color: #313131;
						text-decoration: none; }
						.c-breadcrumb1 li a:hover {
								opacity: 1;
								-ms-filter: "alpha(opacity=100)";
								filter: alpha(opacity=100);
								text-decoration: underline; }
				.c-breadcrumb1 li:first-child:before {
						display: none; }

/*=======================================
コンテンツ
=========================================*/
@media (max-width: 1148px) and (min-width: 1080px) {
		.c-header1__nav li {
				font-size: 13px;
				font-size: 1.3rem;
				margin-right: 16px; } }

@media (max-width: 1079px) and (min-width: 767px) {
		.c-header1__menu {
				display: none; } }

/* ----------------------------- スマホ */
@media screen and (max-width: 767px) {
		.header__head {
				padding: 5px 20px; }
		.c-header1 {
				width: 100%;
				-webkit-box-sizing: border-box;
				-moz-box-sizing: border-box;
				box-sizing: border-box;
				margin-inline: initial;
				position: absolute;
				top: 0;
				z-index: 5;
				padding: initial; }
				.c-header1__logo {
						padding-top: 30px;
						margin-left: 16px;
						width: 200px;
						position: relative;
						z-index: 2; }
						.c-header1__logo h1 {
								margin-bottom: 0; }
				.c-header1__btn {
						max-width: 50%;
						float: right;
						padding: 4px 3px;
						cursor: pointer;
						position: fixed;
						top: 43px;
						right: 20px;
						z-index: 10;
						-webkit-box-sizing: border-box;
						-moz-box-sizing: border-box;
						box-sizing: border-box; }
						.c-header1__btn span {
								display: inline-block;
								*display: inline;
								*zoom: 1;
								width: 18px;
								height: 2px;
								background: #313131;
								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; }
								.c-header1__btn span:before, .c-header1__btn span:after {
										content: "";
										display: block;
										position: absolute;
										width: 100%;
										height: 2px;
										background: #313131;
										-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: 3px; }
								.c-header1__btn span:before {
										top: -6px; }
								.c-header1__btn span:after {
										bottom: -6px; }
						.c-header1__btn.is-open span {
								background: rgba(0, 0, 0, 0); }
								.c-header1__btn.is-open span:before {
										-webkit-transform: rotate(45deg);
										-moz-transform: rotate(45deg);
										transform: rotate(45deg);
										transform-origin: center;
										top: 0;
										background: #FFF; }
								.c-header1__btn.is-open span:after {
										-webkit-transform: rotate(-45deg);
										-moz-transform: rotate(-45deg);
										transform: rotate(-45deg);
										transform-origin: center;
										bottom: 0;
										background: #FFF; }
				.c-header1__nav, .c-header1__contact, .c-header1__sns {
						display: block; }
				.c-header1__nav {
						margin-bottom: 36px; }
						.c-header1__nav li {
								display: block;
								margin-right: 0;
								font-size: 14px;
								font-size: 1.4rem;
								line-height: 100%;
								padding-top: 16px;
								padding-bottom: initial;
								text-align: left; }
								.c-header1__nav li:first-child {
										padding-top: initial; }
								.c-header1__nav li a {
										color: #FFF;
										padding: initial; }
								.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__instagram {
						margin-top: 36px; }
						.c-header1__instagram a {
								display: block;
								font-size: 12px;
								font-size: 1.2rem;
								line-height: 150%;
								font-weight: 500;
								color: #FFF;
								text-decoration: none; }
				.c-header1 .link-y {
						text-align: left; }
		.c-page-toptitle1 {
				padding-top: 154px; }
				.c-page-toptitle1 h1 {
						font-size: 24px;
						font-size: 2.4rem; }
				.c-page-toptitle1 p {
						font-size: 13px;
						font-size: 1.3rem; }
				.c-page-toptitle1 .img {
						margin-top: 48px; }
				.c-page-toptitle1 .c-page-nav {
						position: initial;
						margin-top: 48px; }
						.c-page-toptitle1 .c-page-nav__wrap {
								filter: drop-shadow(10px 10px 8px rgba(49, 49, 49, 0.15));
								padding: 24px 20px 30px; }
						.c-page-toptitle1 .c-page-nav ul {
								display: flex;
								flex-wrap: wrap; }
								.c-page-toptitle1 .c-page-nav ul li {
										width: 48%; }
										.c-page-toptitle1 .c-page-nav ul li:nth-child(even) {
												margin-left: auto; }
										.c-page-toptitle1 .c-page-nav ul li a {
												font-size: 12px;
												font-size: 1.2rem;
												padding: 12px 0; }
												.c-page-toptitle1 .c-page-nav ul li a img {
														float: right; }
		.c-breadcrumb1 {
				margin-bottom: 40px;
				font-size: 12px;
				font-size: 1.2rem;
				line-height: 140%; } }

/*=======================================
フッター
=========================================*/
.l-footer {
		padding-top: 136px;
		padding-bottom: 80px;
		background-color: #313131; }
		.l-footer__wrap {
				width: 89.714%;
				margin-inline: 5.142%; }
		.l-footer__top {
				display: flex; }
				.l-footer__top .r {
						display: flex;
						margin-left: auto; }
		.l-footer__mid {
				margin-top: 80px; }
		.l-footer__btm {
				display: flex;
				margin-top: 40px; }
		.l-footer__logo .flogo a {
				display: block; }
		.l-footer__logo .flogo img {
				width: 284px; }
		.l-footer__logo .address {
				padding-top: 30px;
				margin-top: 60px;
				position: relative;
				color: #FFF; }
				.l-footer__logo .address::before {
						content: "";
						display: block;
						position: absolute;
						top: 0;
						width: 11px;
						height: 1px;
						background-color: #FFF; }
				.l-footer__logo .address p {
						font-size: 15px;
						font-size: 1.5rem;
						line-height: 190%;
						margin-top: 12px; }
						.l-footer__logo .address p:first-child {
								margin-top: initial; }
		.l-footer__ttl {
				margin-top: 48px; }
				.l-footer__ttl img {
						width: 420px; }
				.l-footer__ttl h2 {
						font-size: 70px;
						font-size: 7rem;
						line-height: 120%;
						font-weight: 800;
						color: #FFF;
						margin-bottom: 20px; }
				.l-footer__ttl p {
						font-size: 15px;
						font-size: 1.5rem;
						line-height: 150%;
						color: #FFF; }
		.l-footer__nav:nth-child(2) {
				margin-left: 40px; }
		.l-footer__nav li {
				font-size: 16px;
				font-size: 1.6rem;
				line-height: 150%;
				font-weight: 700;
				padding: 24px 0;
				border-top: 1px solid rgba(255, 255, 255, 0.15);
				width: 284px; }
				.l-footer__nav li p {
						font-size: 16px;
						font-size: 1.6rem;
						line-height: 150%;
						font-weight: 700;
						color: #FFF;
						margin-bottom: 24px; }
				.l-footer__nav li a {
						text-decoration: none;
						color: #FFF;
						display: block;
						width: fit-content;
						transition: all ease .25s; }
						.l-footer__nav li a:hover {
								color: #FADB55; }
				.l-footer__nav li .ca {
						font-size: 14px;
						font-size: 1.4rem;
						line-height: 150%;
						margin-left: 20px;
						margin-top: 12px; }
						.l-footer__nav li .ca:nth-child(1) {
								margin-top: initial; }
		.l-footer__nav2 {
				display: flex;
				width: fit-content;
				margin-left: auto; }
				.l-footer__nav2 li {
						margin-left: 40px; }
		.l-footer .copyright p {
				font-size: 12px;
				font-size: 1.2rem;
				line-height: 125%;
				color: #FFF; }
		.l-footer .policy {
				margin-left: auto; }
				.l-footer .policy a {
						font-size: 12px;
						font-size: 1.2rem;
						line-height: 125%;
						color: #FFF;
						opacity: .7;
						display: block;
						text-decoration: none; }

.l-pagetop {
		position: fixed;
		bottom: 10px;
		left: 50%;
		margin-left: 560px;
		z-index: 9999;
		width: 72px;
		height: 72px; }

/* ----------------------------- スマホ */
@media screen and (max-width: 767px) {
		.l-footer {
				padding-top: 80px; }
				.l-footer__wrap {
						width: 87.2%;
						margin-inline: auto; }
				.l-footer__top {
						display: block; }
						.l-footer__top .r {
								display: block;
								margin-top: 36px; }
				.l-footer__mid {
						margin-top: 36px; }
				.l-footer__btm {
						margin-top: 88px; }
				.l-footer__logo .flogo img {
						width: 260px; }
				.l-footer__logo .address {
						margin-top: 36px;
						padding-top: 30px; }
						.l-footer__logo .address p {
								font-size: 13px;
								font-size: 1.3rem;
								margin-top: 8px; }
				.l-footer__ttl {
						margin-top: 104px; }
						.l-footer__ttl img {
								width: auto; }
				.l-footer__nav:nth-child(2) {
						margin-left: initial; }
				.l-footer__nav li {
						font-size: 14px;
						font-size: 1.4rem;
						width: auto; }
						.l-footer__nav li .ca {
								font-size: 13px;
								font-size: 1.3rem; }
				.l-footer__nav2 {
						display: block;
						margin-left: initial; }
						.l-footer__nav2 li {
								margin-left: initial;
								margin-top: 20px; }
								.l-footer__nav2 li:first-child {
										margin-top: initial; }
		.l-pagetop {
				margin-left: 0;
				left: auto;
				right: 15px;
				bottom: 15px;
				width: 48px;
				height: 48px; } }

/*=======================================
サイドバー
=========================================*/
.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. トップページ */
/*=======================================
トップページ
=========================================*/
.seamless-slider {
		overflow: hidden;
		width: 100%;
		/* 高さは画像の高さに合わせる（例：100px） */
		--speed: 12s;
		/* ここで速度調整（小さいほど速い） */ }

.s-track {
		display: flex;
		align-items: center;
		/* アニメーションでトラック全体を左へ半分移動させる */
		animation: s-scroll var(--speed) linear infinite;
		/* 重要：アニメーションの translateX(-50%) はトラック幅の半分を意味する */ }

.s-item {
		flex: 0 0 auto;
		/* 横に並べる・縮めない */ }

/* 画像は縦に合わせて自動幅にする（必要に応じて調整） */
.s-item img {
		display: block;
		height: 240px;
		width: auto;
		object-fit: cover; }

/* アニメーション：0 -> -50% (トラック幅の半分) */
@keyframes s-scroll {
		from {
				transform: translateX(0); }
		to {
				transform: translateX(-50%); } }

@keyframes slide-top-pc {
		from {
				bottom: -80px; }
		to {
				bottom: 0; } }

.c-kv1 {
		position: sticky;
		top: 100px;
		z-index: 0; }
		.c-kv1__wrap {
				width: 100%;
				height: calc(100vh - 100px);
				position: relative;
				background-position: center;
				background-repeat: no-repeat;
				background-image: url(../img/top/fv.png);
				background-size: contain;
				background-image: initial; }
		.c-kv1__ttl {
				padding-top: 7.928vw;
				margin-left: 5.142%;
				position: relative;
				z-index: 5;
				/*
		h2.ttl {
			@include fs(80);
			line-height: 120%;
			color: #1F1F1D;
			font-weight: 800;
			letter-spacing: -.04em;
		}
		p.txt {
			@include fs(17);
			line-height: 150%;
			font-weight: 800;
			margin-top: 36px;
		}
		*/ }
				.c-kv1__ttl img, .c-kv1__ttl span {
						display: block; }
				.c-kv1__ttl .ttl1 {
						width: 392px;
						height: 80px;
						position: relative;
						overflow: hidden; }
						.c-kv1__ttl .ttl1 img {
								position: absolute;
								bottom: -80px;
								animation: slide-top-pc ease .4s;
								animation-delay: .25s;
								animation-fill-mode: forwards; }
				.c-kv1__ttl .ttl2 {
						width: 481px;
						height: 80px;
						position: relative;
						overflow: hidden;
						margin-top: 12px; }
						.c-kv1__ttl .ttl2 img {
								position: absolute;
								bottom: -80px;
								animation: slide-top-pc ease .4s;
								animation-delay: .5s;
								animation-fill-mode: forwards; }
				.c-kv1__ttl span {
						font-size: 20px;
						font-size: 2rem;
						line-height: 150%;
						font-weight: 500;
						margin-top: 32px; }
		.c-kv1__txt {
				width: 302px;
				margin-top: 2rem;
				margin-left: auto;
				margin-right: 5.857%; }
				.c-kv1__txt h4 {
						font-size: 19px;
						font-size: 1.9rem;
						line-height: 200%;
						font-weight: 700;
						margin-bottom: 30px; }
				.c-kv1__txt p {
						font-size: 14px;
						font-size: 1.4rem;
						line-height: 175%;
						padding-left: 16px;
						border-left: 1px solid rgba(49, 49, 49, 0.15); }
		.c-kv1__sd {
				position: absolute;
				left: 5.142%;
				bottom: 48px; }
				.c-kv1__sd p {
						font-size: 14px;
						font-size: 1.4rem;
						line-height: 125%;
						padding-bottom: 4px;
						text-decoration: none;
						border-bottom: 1px solid #313131; }
						.c-kv1__sd p .icon {
								margin-left: 2px; }
				.c-kv1__sd .scroll-down {
						display: inline-flex;
						align-items: center;
						gap: 2px;
						position: relative; }
				.c-kv1__sd .scroll-down img {
						width: 16px;
						height: auto;
						animation: arrowFlow 1.6s ease-in-out infinite; }

@keyframes arrowFlow {
		0% {
				transform: translate(0, 0);
				opacity: 1; }
		40% {
				transform: translate(8px, 8px);
				opacity: 0; }
		41% {
				transform: translate(-8px, -8px);
				opacity: 0; }
		42% {
				transform: translate(-8px, -8px);
				opacity: 1; }
		100% {
				transform: translate(0, 0);
				opacity: 1; } }
		.c-kv1__slide {
				width: 100%;
				height: 100%;
				position: absolute;
				left: 0;
				right: 0;
				top: 0;
				margin: auto;
				overflow: hidden; }
				.c-kv1__slide img {
						width: 55.142vw;
						height: 83.92vh;
						object-fit: contain;
						position: relative;
						left: 15.86vw;
						top: 0; }
		.c-kv1__bgslide {
				position: absolute;
				top: 25%;
				z-index: -1; }

.p-top {
		position: relative;
		z-index: 1; }
		.p-top__head p.en {
				font-size: 17px;
				font-size: 1.7rem;
				line-height: 125%;
				font-weight: 400;
				letter-spacing: .02em;
				margin-bottom: 20px; }
		.p-top__head h2 {
				font-size: 48px;
				font-size: 4.8rem;
				line-height: 125%;
				font-weight: 700; }
		.p-top__txt {
				max-width: 582px;
				margin-left: auto;
				padding-left: 24px; }
				.p-top__txt p {
						font-size: 24px;
						font-size: 2.4rem;
						line-height: 1.9;
						font-weight: 700; }
		.p-top__about {
				padding-top: 180px;
				padding-bottom: 180px;
				background-color: #EAE8C3;
				position: relative;
				overflow: hidden; }
				.p-top__about__wrap {
						margin-inline: 5.142%;
						position: relative;
						z-index: 1; }
				.p-top__about .p-top__head {
						max-width: 622px;
						margin: 0 auto;
						padding-right: 150px; }
						.p-top__about .p-top__head .img {
								margin-top: 48px;
								margin-bottom: 80px; }
								.p-top__about .p-top__head .img img {
										width: auto; }
				.p-top__about__content .txt {
						width: 35.714%;
						min-width: 500px;
						margin: 0 auto; }
						.p-top__about__content .txt h4 {
								font-size: 48px;
								font-size: 4.8rem;
								line-height: 150%;
								font-weight: 700; }
						.p-top__about__content .txt p {
								font-size: 17px;
								font-size: 1.7rem;
								line-height: 190%;
								margin: 60px 0; }
				.p-top__about__bg {
						position: absolute;
						left: 0;
						right: 0;
						margin: auto;
						width: fit-content;
						bottom: -4%; }
						.p-top__about__bg img {
								width: 240px; }
		.p-top__news {
				padding-top: 66px;
				padding-bottom: 136px;
				background-color: #FFF; }
				.p-top__news .p-top__head {
						margin-inline: 5.142%; }
				.p-top__news__content {
						width: 78.14%;
						margin: 0 auto; }
						.p-top__news__content .txt {
								margin: 60px 0 36px; }
								.p-top__news__content .txt p {
										font-size: 17px;
										font-size: 1.7rem;
										line-height: 150%; }
				.p-top__news .abutton {
						margin-top: 48px;
						text-align: right; }
						.p-top__news .abutton a {
								margin-left: auto; }
		.p-top__projects {
				padding-top: 96px;
				background-color: #F2F5E4; }
				.p-top__projects__wrap {
						margin-inline: 5.142%;
						display: flex; }
						.p-top__projects__wrap .p-top__txt {
								padding-top: 133px; }
				.p-top__projects__content {
						margin-top: 120px; }
						.p-top__projects__content .business-list {
								display: flex; }
								.p-top__projects__content .business-list li {
										width: 40.87%;
										padding: 2.857vw;
										border: 1px solid rgba(0, 0, 0, 0.15); }
										.p-top__projects__content .business-list li:nth-child(even) {
												margin-left: auto; }
										.p-top__projects__content .business-list li .txt {
												margin-top: 27px; }
												.p-top__projects__content .business-list li .txt h5 {
														font-size: 32px;
														font-size: 3.2rem;
														line-height: 150%;
														font-weight: 500; }
												.p-top__projects__content .business-list li .txt p {
														font-size: 14px;
														font-size: 1.4rem;
														line-height: 175%;
														margin-top: 36px; }
				.p-top__projects .projects-list {
						display: flex; }
						.p-top__projects .projects-list .li-img {
								width: 48.57%; }
						.p-top__projects .projects-list .li-txt {
								width: 51.43%; }
						.p-top__projects .projects-list li .img {
								height: 58.214vw;
								position: sticky;
								top: 0; }
								.p-top__projects .projects-list li .img img {
										width: 100%;
										height: 100%;
										object-fit: cover; }
						.p-top__projects .projects-list li .txt {
								height: 58.214vw;
								position: relative; }
								.p-top__projects .projects-list li .txt__wrap {
										position: absolute;
										top: 0;
										left: 0;
										right: 0;
										bottom: 0;
										margin: auto;
										width: 69.17%;
										height: fit-content;
										margin-right: 10%; }
								.p-top__projects .projects-list li .txt h6 {
										font-size: 18px;
										font-size: 1.8rem;
										line-height: 175%;
										font-weight: 500; }
								.p-top__projects .projects-list li .txt h4 {
										font-size: 40px;
										font-size: 4rem;
										line-height: 150%;
										font-weight: 700;
										margin: 20px 0 36px; }
								.p-top__projects .projects-list li .txt p {
										font-size: 16px;
										font-size: 1.6rem;
										line-height: 190%;
										font-weight: 500; }
								.p-top__projects .projects-list li .txt .abutton {
										margin-top: 48px; }
		.p-top__partner {
				padding-top: 160px;
				background-color: #F2F5E4; }
				.p-top__partner__wrap {
						display: flex; }
						.p-top__partner__wrap .l {
								position: relative;
								background-color: #FADB55;
								width: 43.7%; }
								.p-top__partner__wrap .l__wrap {
										position: absolute;
										top: 0;
										left: 0;
										right: 0;
										bottom: 0;
										margin: auto;
										width: 63.75%;
										height: fit-content; }
						.p-top__partner__wrap .r {
								width: 56.3%; }
				.p-top__partner .txt {
						margin-top: 48px; }
						.p-top__partner .txt p {
								font-size: 17px;
								font-size: 1.7rem;
								line-height: 190%; }
				.p-top__partner .abutton {
						margin-top: 48px; }
				.p-top__partner .p-top__head h2 {
						font-size: 40px;
						font-size: 4rem; }

/* ----------------------------- スマホ */
@media screen and (max-width: 767px) {
		@keyframes slide-top-sp {
				from {
						bottom: -48px; }
				to {
						bottom: 0; } }
		.c-kv1 {
				top: 0;
				height: calc(100vh - 74px);
				padding-top: 74px; }
				.c-kv1__wrap {
						height: 100%;
						background-image: url(../img/top/sp/fv.png);
						background-image: initial;
						background-size: cover; }
				.c-kv1__ttl {
						padding-top: 64px;
						margin-left: 20px;
						position: relative;
						z-index: 1; }
						.c-kv1__ttl h2.ttl {
								width: fit-content; }
						.c-kv1__ttl .ttl1 {
								width: 236px;
								height: 48px; }
								.c-kv1__ttl .ttl1 img {
										bottom: -48px;
										animation: slide-top-sp ease .4s;
										animation-delay: .25s;
										animation-fill-mode: forwards; }
						.c-kv1__ttl .ttl2 {
								width: 289px;
								height: 48px; }
								.c-kv1__ttl .ttl2 img {
										bottom: -48px;
										animation: slide-top-sp ease .4s;
										animation-delay: .5s;
										animation-fill-mode: forwards; }
						.c-kv1__ttl span {
								font-size: 14px;
								font-size: 1.4rem;
								margin-top: 24px; }
				.c-kv1__sd {
						left: 24px;
						bottom: 32px; }
						.c-kv1__sd a {
								font-size: 12px;
								font-size: 1.2rem; }
				.c-kv1__slide {
						z-index: 0; }
						.c-kv1__slide .swiper-slide {
								width: 149vw !important;
								left: initial !important; }
								.c-kv1__slide .swiper-slide img {
										width: auto;
										height: auto;
										left: -25vw; }
		.p-top__head h2 {
				font-size: 24px;
				font-size: 2.4rem; }
		.p-top__head p.en {
				font-size: 13px;
				font-size: 1.3rem; }
		.p-top__txt p {
				font-size: 14px;
				font-size: 1.4rem; }
		.p-top .sp-container {
				width: 87.2%;
				margin: auto; }
		.p-top__about {
				padding: 80px 0; }
				.p-top__about .p-top__head {
						max-width: initial;
						padding-right: initial; }
						.p-top__about .p-top__head .img {
								margin: 36px 0 40px; }
				.p-top__about__content .txt {
						width: auto;
						min-width: initial; }
						.p-top__about__content .txt h4 {
								font-size: 26px;
								font-size: 2.6rem; }
						.p-top__about__content .txt p {
								font-size: 14px;
								font-size: 1.4rem;
								margin: 36px 0; }
		.p-top__news {
				padding: 48px 0 96px; }
				.p-top__news .p-top__head {
						margin-inline: initial; }
				.p-top__news__content {
						width: auto; }
						.p-top__news__content .txt {
								margin: 30px 0 36px; }
		.p-top__projects {
				padding-top: 60px; }
				.p-top__projects__wrap {
						display: block;
						margin-inline: initial; }
						.p-top__projects__wrap .p-top__txt {
								padding-top: 30px;
								padding-left: initial;
								max-width: initial; }
				.p-top__projects__content {
						width: auto;
						margin-top: 48px; }
				.p-top__projects .projects-list {
						display: block; }
						.p-top__projects .projects-list li {
								width: auto !important; }
								.p-top__projects .projects-list li .img {
										height: auto;
										position: initial; }
								.p-top__projects .projects-list li .txt {
										height: auto;
										margin-top: 60px; }
										.p-top__projects .projects-list li .txt:nth-child(1) {
												margin-top: initial; }
										.p-top__projects .projects-list li .txt__wrap {
												position: initial;
												width: auto; }
										.p-top__projects .projects-list li .txt h4 {
												font-size: 24px;
												font-size: 2.4rem;
												margin: 20px 0 30px; }
										.p-top__projects .projects-list li .txt h6 {
												font-size: 14px;
												font-size: 1.4rem;
												margin-top: 36px; }
										.p-top__projects .projects-list li .txt p {
												font-size: 14px;
												font-size: 1.4rem; }
										.p-top__projects .projects-list li .txt .abutton {
												margin-top: 36px; }
		.p-top__partner {
				padding-top: 96px; }
				.p-top__partner__wrap {
						display: block; }
						.p-top__partner__wrap .l {
								width: auto; }
								.p-top__partner__wrap .l__wrap {
										position: initial;
										padding: 60px 0 72px; }
						.p-top__partner__wrap .r {
								width: auto; }
				.p-top__partner .txt {
						margin-top: 30px; }
						.p-top__partner .txt p {
								font-size: 14px;
								font-size: 1.4rem; }
				.p-top__partner .abutton {
						margin-top: 36px; }
				.p-top__partner .p-top__head h2 {
						font-size: 24px;
						font-size: 2.4rem; } }

/* ----------------------------- 3. 下層ページ */
/*=======================================
about detail
=========================================*/
.p-about {
		padding-top: 120px;
		padding-bottom: 200px; }
		.p-about__top {
				padding-top: 20px; }
				.p-about__top__wrap {
						max-width: 500px;
						margin: 0 auto;
						padding-right: 7.7%; }
						.p-about__top__wrap p {
								font-size: 30px;
								font-size: 3rem;
								line-height: 175%;
								font-weight: 700;
								margin-top: 40px; }
								.p-about__top__wrap p:first-child {
										margin-top: initial; }
		.p-about__sup {
				padding-top: 144px; }
				.p-about__sup__head {
						display: flex;
						width: 89.71428%;
						margin: auto;
						align-items: end; }
						.p-about__sup__head .ttl p {
								font-size: 16px;
								font-size: 1.6rem;
								line-height: 125%;
								font-weight: 700;
								margin-bottom: 30px; }
						.p-about__sup__head .ttl h2 {
								font-size: 48px;
								font-size: 4.8rem;
								line-height: 150%;
								font-weight: 700; }
						.p-about__sup__head .txt {
								max-width: 500px;
								padding-left: 24px;
								margin-left: auto; }
								.p-about__sup__head .txt p {
										font-size: 16px;
										font-size: 1.6rem;
										line-height: 175%;
										font-weight: 500; }
				.p-about__sup__content {
						padding-top: 180px;
						padding-bottom: 160px;
						position: relative; }
						.p-about__sup__content ul {
								width: 74.2857%;
								margin-left: auto;
								margin-right: 5.1428%; }
								.p-about__sup__content ul li {
										margin-top: 160px; }
										.p-about__sup__content ul li:first-child {
												margin-top: initial; }
										.p-about__sup__content ul li h4 {
												font-size: 40px;
												font-size: 4rem;
												line-height: 150%;
												font-weight: 700;
												padding-bottom: 8px;
												margin-bottom: 80px;
												border-bottom: 1px solid rgba(49, 49, 49, 0.15); }
										.p-about__sup__content ul li h6 {
												font-size: 36px;
												font-size: 3.6rem;
												line-height: 150%;
												font-weight: 700; }
										.p-about__sup__content ul li p {
												font-size: 16px;
												font-size: 1.6rem;
												line-height: 200%;
												font-weight: 500;
												margin-top: 36px; }
										.p-about__sup__content ul li .abutton {
												margin-top: 48px; }
								.p-about__sup__content ul .fl {
										display: flex; }
										.p-about__sup__content ul .fl .l {
												width: 48.0769%; }
										.p-about__sup__content ul .fl .r {
												position: relative;
												width: 48.0769%;
												margin-left: auto; }
												.p-about__sup__content ul .fl .r__wrap {
														height: fit-content;
														position: absolute;
														top: 0;
														left: 0;
														right: 0;
														bottom: 0;
														margin: auto;
														padding-left: 60px; }
		.p-about__ov {
				padding-top: 104px; }
		.p-about__et {
				padding-top: 144px; }
		.p-about .aboutswiper {
				padding-top: 180px; }
				.p-about .aboutswiper .swiper-wrapper {
						transition-timing-function: linear; }
		.p-about .seamless-slider {
				position: absolute;
				top: -50px;
				z-index: -1; }

/* ----------------------------- スマホ */
@media screen and (max-width: 767px) {
		.p-about {
				padding-top: 104px;
				padding-bottom: 144px; }
				.p-about__top {
						padding-top: initial; }
						.p-about__top__wrap {
								max-width: initial;
								width: 78.4%;
								padding-right: initial; }
								.p-about__top__wrap p {
										font-size: 17px;
										font-size: 1.7rem;
										margin-top: 30px; }
				.p-about .aboutswiper {
						padding-top: 104px; }
						.p-about .aboutswiper .swiper-wrapper {
								transition-timing-function: linear; }
				.p-about__sup {
						padding-top: 80px; }
						.p-about__sup__head {
								display: block;
								width: 87.2%; }
								.p-about__sup__head .ttl h2 {
										font-size: 26px;
										font-size: 2.6rem; }
								.p-about__sup__head .ttl p {
										font-size: 13px;
										font-size: 1.3rem;
										margin-bottom: 20px; }
								.p-about__sup__head .txt {
										padding-left: initial;
										max-width: initial;
										margin-top: 36px; }
						.p-about__sup__content {
								padding-top: 80px;
								padding-bottom: initial; }
								.p-about__sup__content ul {
										width: 87.2%;
										margin: 0 auto; }
										.p-about__sup__content ul .fl {
												display: block; }
												.p-about__sup__content ul .fl .l {
														width: auto; }
												.p-about__sup__content ul .fl .r {
														width: auto;
														margin-top: 36px; }
														.p-about__sup__content ul .fl .r__wrap {
																position: initial;
																padding-left: initial; }
										.p-about__sup__content ul li {
												margin-top: 80px; }
												.p-about__sup__content ul li h4 {
														font-size: 24px;
														font-size: 2.4rem;
														margin-bottom: 36px; }
												.p-about__sup__content ul li h6 {
														font-size: 24px;
														font-size: 2.4rem; }
												.p-about__sup__content ul li p {
														font-size: 14px;
														font-size: 1.4rem;
														margin-top: 24px; }
												.p-about__sup__content ul li .abutton {
														margin-top: 36px; }
				.p-about__ov {
						padding-top: 124px; }
						.p-about__ov .table1 {
								margin-top: 36px; }
				.p-about__et {
						padding-top: 96px; }
						.p-about__et .table1 {
								margin-top: 36px; } }

/*=======================================
access detail
=========================================*/
.p-access {
		padding-top: 160px;
		padding-bottom: 200px; }
		.p-access .iframe {
				margin-bottom: 40px; }
				.p-access .iframe iframe {
						width: 100%;
						height: 549px; }
		.p-access .maplink {
				margin-bottom: 20px; }
				.p-access .maplink a {
						font-size: 17px;
						font-size: 1.7rem;
						line-height: 150%;
						font-weight: 400;
						text-decoration: none; }
						.p-access .maplink a span {
								text-decoration: underline; }
						.p-access .maplink a img {
								line-height: 100%;
								vertical-align: middle;
								margin-right: 8px; }
		.p-access .address {
				margin-bottom: 96px; }
		.p-access .txt h4 {
				font-size: 24px;
				font-size: 2.4rem;
				line-height: 150%;
				font-weight: 700;
				padding-bottom: 8px;
				border-bottom: 1px solid rgba(49, 49, 49, 0.15);
				margin-bottom: 48px; }
		.p-access .sub.mt {
				padding-top: 120px; }
		.p-access .table3 {
				margin-top: 60px; }
		.p-access p {
				font-size: 16px;
				font-size: 1.6rem;
				line-height: 200%;
				font-weight: 500; }

.navsticky {
		position: relative; }
		.navsticky-l {
				margin-inline: 5.142%;
				position: absolute;
				top: 160px;
				height: 100%;
				z-index: 3; }

.page2-nav {
		position: sticky;
		top: 120px;
		bottom: 60px;
		padding-bottom: 60px; }
		.page2-nav ul li {
				margin-top: 12px;
				list-style: disc;
				list-style-position: inside; }
				.page2-nav ul li:first-child {
						margin-top: initial; }
				.page2-nav ul li a {
						font-size: 14px;
						font-size: 1.4rem;
						line-height: 125%;
						font-weight: 700;
						text-decoration: none;
						padding-right: 24px;
						background-image: url(../img/access/nav-button.svg);
						background-position: right;
						background-repeat: no-repeat;
						background-size: contain;
						transition: all ease .25s; }
						.page2-nav ul li a:hover {
								background-image: url(../img/access/nav-button-hover.svg); }

.page2-f {
		margin-top: 160px; }
		.page2-f .bdt {
				border-top: 1px solid rgba(49, 49, 49, 0.15); }
		.page2-f ul li a {
				font-size: 21px;
				font-size: 2.1rem;
				line-height: 150%;
				font-weight: 700;
				padding: 36px 0;
				text-decoration: none;
				border-bottom: 1px solid rgba(49, 49, 49, 0.15);
				position: relative;
				display: block;
				transition: all ease .25s; }
				.page2-f ul li a span {
						font-size: 14px;
						font-size: 1.4rem;
						line-height: 150%;
						font-weight: 500; }
				.page2-f ul li a .button {
						position: absolute;
						right: 0;
						top: 0;
						bottom: 0;
						margin: auto;
						background-color: #313131;
						border-radius: 50%;
						width: 36px;
						height: 36px; }
						.page2-f ul li a .button__wrap {
								top: 0;
								bottom: 0;
								left: 0;
								right: 0;
								margin: auto;
								width: 16px;
								height: 16px;
								position: absolute;
								overflow: hidden; }
						.page2-f ul li a .button img {
								width: 16px;
								height: 16px; }
						.page2-f ul li a .button .arrow1 {
								position: absolute;
								top: 0;
								bottom: 0;
								left: 0;
								right: 0;
								width: 16px;
								height: 16px;
								margin: auto; }
						.page2-f ul li a .button .arrow2 {
								position: absolute;
								top: 0;
								bottom: 0;
								left: -36px;
								right: 0;
								width: 16px;
								height: 16px;
								margin: auto; }
		.page2-f ul li:hover a {
				padding-left: 6px;
				border-bottom: 1px solid #313131; }
		.page2-f ul li:hover .button .arrow1 {
				left: 36px; }
		.page2-f ul li:hover .button .arrow2 {
				left: 0; }

/* ----------------------------- スマホ */
@media screen and (max-width: 767px) {
		.p-access {
				padding-top: 48px;
				padding-bottom: 120px; }
				.p-access .sub.mt {
						padding-top: 80px; }
				.p-access .iframe {
						margin-bottom: 30px; }
						.p-access .iframe iframe {
								height: 218px; }
				.p-access .maplink a {
						font-size: 15px;
						font-size: 1.5rem; }
				.p-access .address {
						margin-bottom: 60px; }
						.p-access .address p {
								font-size: 14px;
								font-size: 1.4rem; }
				.p-access .txt h4 {
						font-size: 20px;
						font-size: 2rem;
						margin-bottom: 30px; }
				.p-access .txt p {
						font-size: 14px;
						font-size: 1.4rem; }
		.page2-f {
				margin-top: 104px; }
				.page2-f ul li a {
						font-size: 16px;
						font-size: 1.6rem;
						padding: 20px 50px 20px 0; }
						.page2-f ul li a span {
								font-size: 14px;
								font-size: 1.4rem;
								display: block;
								margin-top: 12px; }
						.page2-f ul li a .button {
								width: 26px;
								height: 26px; } }

/*=======================================
guide detail
=========================================*/
.p-guide {
		padding-bottom: 200px; }
		.p-guide #contents1 {
				padding-bottom: 144px; }
		.p-guide #contents2 {
				padding-bottom: 180px;
				position: relative;
				background-color: #EAE8C3; }
				.p-guide #contents2 .img {
						position: absolute;
						left: 0;
						bottom: -68px; }
						.p-guide #contents2 .img img {
								max-width: 356px;
								width: 25.428vw; }
		.p-guide #hours {
				padding-top: 160px; }
		.p-guide #who {
				padding-top: 144px; }
		.p-guide #how {
				padding-top: 104px; }
		.p-guide #rules {
				padding-top: 104px; }
		.p-guide .txt h4 {
				font-size: 24px;
				font-size: 2.4rem;
				line-height: 150%;
				font-weight: 700;
				padding-bottom: 8px;
				border-bottom: 1px solid rgba(49, 49, 49, 0.15);
				margin-top: 80px; }
				.p-guide .txt h4:first-child {
						margin-top: initial; }
		.p-guide .txt h5 {
				font-size: 21px;
				font-size: 2.1rem;
				line-height: 150%;
				font-weight: 700;
				margin-top: 80px;
				margin-bottom: 14px; }
		.p-guide .txt p {
				margin-top: 36px; }
				.p-guide .txt p a {
						color: #2474AE;
						text-decoration: underline; }
		.p-guide .txt .abutton {
				margin-top: 36px; }
		.p-guide .table3 {
				margin-top: 60px; }
		.p-guide p {
				font-size: 16px;
				font-size: 1.6rem;
				line-height: 200%;
				font-weight: 500; }

/* ----------------------------- スマホ */
@media screen and (max-width: 767px) {
		.p-guide {
				padding-bottom: 120px; }
				.p-guide #contents1 {
						padding-bottom: 80px; }
				.p-guide #contents2 {
						padding-bottom: 240px; }
						.p-guide #contents2 .img {
								bottom: -97px; }
								.p-guide #contents2 .img img {
										width: 53.333vw; }
				.p-guide #hours {
						padding-top: 48px; }
				.p-guide #who {
						padding-top: 60px; }
				.p-guide #how {
						padding-top: 60px; }
				.p-guide #rules {
						padding-top: 157px; }
				.p-guide .txt h4 {
						font-size: 20px;
						font-size: 2rem; }
				.p-guide .txt h5 {
						font-size: 18px;
						font-size: 1.8rem;
						margin-top: 60px; }
				.p-guide .txt p {
						margin-top: 30px; }
				.p-guide .table3 {
						margin-top: 48px; }
				.p-guide p {
						font-size: 14px;
						font-size: 1.4rem; } }

/*=======================================
facility detail
=========================================*/
.p-facility {
		padding-bottom: 200px; }
		.p-facility #contents1 {
				padding-bottom: 144px; }
		.p-facility #contents2 {
				background-color: #E1E9DB; }
		.p-facility #contents3 {
				padding-bottom: 36px; }
		.p-facility #floor {
				padding-top: 160px; }
		.p-facility #facilities {
				padding-top: 120px;
				padding-bottom: 160px; }
		.p-facility #gallery {
				padding-top: 120px;
				padding-bottom: 144px; }
		.p-facility .txt h4 {
				font-size: 24px;
				font-size: 2.4rem;
				line-height: 150%;
				font-weight: 700;
				padding-bottom: 8px;
				border-bottom: 1px solid rgba(49, 49, 49, 0.15);
				margin-top: 80px; }
				.p-facility .txt h4:first-child {
						margin-top: initial; }
		.p-facility .txt h5 {
				font-size: 21px;
				font-size: 2.1rem;
				line-height: 150%;
				font-weight: 700;
				margin-top: 80px;
				margin-bottom: 14px; }
		.p-facility .txt p {
				margin-top: 36px; }
				.p-facility .txt p a {
						color: #2474AE;
						text-decoration: underline; }
		.p-facility .txt .link-b {
				margin-top: 36px; }
		.p-facility .facility__img {
				margin-top: 80px; }
				.p-facility .facility__img:nth-child(1) {
						margin-top: initial; }
				.p-facility .facility__img h5 {
						font-size: 30px;
						font-size: 3rem;
						line-height: 150%;
						font-weight: 700;
						margin: 36px 0 40px; }
		.p-facility p {
				font-size: 16px;
				font-size: 1.6rem;
				line-height: 200%;
				font-weight: 500; }
		.p-facility .facilities__table {
				margin-top: 60px; }
				.p-facility .facilities__table h4 {
						font-size: 24px;
						font-size: 2.4rem;
						line-height: 150%;
						font-weight: 700;
						padding-bottom: 8px;
						margin-bottom: 48px;
						border-bottom: 1px solid rgba(49, 49, 49, 0.15); }
				.p-facility .facilities__table table {
						width: 100%;
						margin-bottom: 80px; }
						.p-facility .facilities__table table:last-child {
								margin-bottom: initial; }
						.p-facility .facilities__table table tr {
								border-bottom: 1px solid rgba(49, 49, 49, 0.15); }
								.p-facility .facilities__table table tr th {
										font-weight: 700;
										width: 26.405%;
										text-align: left; }
								.p-facility .facilities__table table tr td:first-child {
										width: 65.772%; }
								.p-facility .facilities__table table tr td:last-child {
										width: 7.823%;
										text-align: right; }
								.p-facility .facilities__table table tr th, .p-facility .facilities__table table tr td {
										font-size: 17px;
										font-size: 1.7rem;
										line-height: 150%;
										padding: 20px 0; }
		.p-facility .aboutswiper .swiper-wrapper {
				transition-timing-function: linear; }

/* ----------------------------- スマホ */
@media screen and (max-width: 767px) {
		.p-facility {
				padding-bottom: 120px; }
				.p-facility #contents1 {
						padding-bottom: 80px; }
				.p-facility #contents3 {
						padding-bottom: initial; }
				.p-facility #floor {
						padding-top: 48px; }
				.p-facility #facilities {
						padding-top: 60px;
						padding-bottom: 104px; }
				.p-facility #gallery {
						padding-top: 80px;
						padding-bottom: 80px; }
				.p-facility .txt h4 {
						font-size: 20px;
						font-size: 2rem; }
				.p-facility .txt h5 {
						font-size: 18px;
						font-size: 1.8rem;
						margin-top: 60px; }
				.p-facility .txt p {
						margin-top: 30px; }
				.p-facility .facility__img {
						margin-top: 60px; }
						.p-facility .facility__img h5 {
								font-size: 20px;
								font-size: 2rem;
								margin: 30px 0; }
				.p-facility .facilities__table {
						margin-top: 48px; }
						.p-facility .facilities__table h4 {
								font-size: 20px;
								font-size: 2rem;
								margin-bottom: 30px; }
						.p-facility .facilities__table table {
								margin-bottom: 60px; }
								.p-facility .facilities__table table tr {
										display: flex;
										flex-wrap: wrap;
										padding: 12px 0; }
										.p-facility .facilities__table table tr th {
												width: 100%; }
										.p-facility .facilities__table table tr td {
												text-align: left !important; }
												.p-facility .facilities__table table tr td.pd8 {
														padding: 8px 0; }
										.p-facility .facilities__table table tr th, .p-facility .facilities__table table tr td {
												font-size: 14px;
												font-size: 1.4rem;
												width: 100% !important;
												padding: initial;
												display: block; }
				.p-facility .table3 {
						margin-top: 48px; }
				.p-facility p {
						font-size: 14px;
						font-size: 1.4rem; } }

/*=======================================
member detail
=========================================*/
.p-member {
		padding-top: 120px;
		padding-bottom: 200px; }
		.p-member__top .txt p {
				font-size: 21px;
				font-size: 2.1rem;
				line-height: 175%;
				font-weight: 700; }
		.p-member__list {
				padding-top: 14.4rem; }
				.p-member__list p.sub {
						font-size: 16px;
						font-size: 1.6rem;
						line-height: 175%;
						font-weight: 500;
						margin-top: 36px; }
				.p-member__list .date {
						margin-top: 40px;
						text-align: right; }
						.p-member__list .date p {
								font-size: 16px;
								font-size: 1.6rem;
								line-height: 175%;
								font-weight: 500; }
				.p-member__list ul li {
						margin-top: 80px; }
						.p-member__list ul li:first-child {
								margin-top: initial; }
						.p-member__list ul li h4 {
								font-size: 24px;
								font-size: 2.4rem;
								line-height: 150%;
								font-weight: 700;
								padding-bottom: 8px;
								margin-bottom: 36px;
								border-bottom: 1px solid rgba(49, 49, 49, 0.15); }
						.p-member__list ul li p {
								font-size: 16px;
								font-size: 1.6rem;
								line-height: 200%;
								font-weight: 500; }

/* ----------------------------- スマホ */
@media screen and (max-width: 767px) {
		.p-member {
				padding-top: 48px;
				padding-bottom: 144px; }
				.p-member__top .txt p {
						font-size: 20px;
						font-size: 2rem; }
				.p-member__list {
						padding-top: 96px; }
						.p-member__list p.sub {
								font-size: 14px;
								font-size: 1.4rem;
								margin-top: 24px; }
						.p-member__list ul li h4 {
								font-size: 20px;
								font-size: 2rem;
								margin-bottom: 30px; }
						.p-member__list ul li p {
								font-size: 14px;
								font-size: 1.4rem; }
						.p-member__list .date p {
								font-size: 16px;
								font-size: 1.6rem; } }

/*=======================================
information detail
=========================================*/
.p-information {
		padding-top: 120px;
		padding-bottom: 200px; }
		.p-information__top .txt p {
				font-size: 21px;
				font-size: 2.1rem;
				line-height: 175%;
				font-weight: bold; }
		.p-information__company {
				padding-top: 144px; }
		.p-information__unv {
				padding-top: 144px; }
		.p-information__info {
				padding-top: 144px; }
		.p-information .table2 tr td {
				font-weight: 700; }
		.p-information .benefit {
				margin-top: 80px; }
				.p-information .benefit h4 {
						font-size: 24px;
						font-size: 2.4rem;
						line-height: 150%;
						font-weight: 700;
						padding-bottom: 8px;
						border-bottom: 1px solid rgba(49, 49, 49, 0.15); }
				.p-information .benefit h6 {
						font-size: 21px;
						font-size: 2.1rem;
						line-height: 150%;
						font-weight: 700;
						padding-bottom: 14px;
						margin-top: 48px; }
				.p-information .benefit p {
						font-size: 16px;
						font-size: 1.6rem;
						line-height: 200%;
						font-weight: 500; }
		.p-information .txt p {
				font-size: 21px;
				font-size: 2.1rem;
				line-height: 175%;
				font-weight: 700; }
		.p-information .link {
				margin-top: 60px;
				margin-bottom: 60px; }
				.p-information .link p {
						font-size: 15px;
						font-size: 1.5rem;
						line-height: 200%;
						font-weight: 500;
						margin-top: 16px; }

/* ----------------------------- スマホ */
@media screen and (max-width: 767px) {
		.p-information {
				padding-top: 48px;
				padding-bottom: 144px; }
				.p-information .pi-wrap {
						width: 87.2%;
						margin-left: auto;
						margin-right: auto; }
				.p-information .container2 {
						width: auto; }
				.p-information .txt p {
						font-size: 20px;
						font-size: 2rem; }
				.p-information__company {
						padding-top: 96px; }
				.p-information__unv {
						padding-top: 96px; }
				.p-information__info {
						padding-top: 96px; }
						.p-information__info .txt {
								margin-top: 48px; }
								.p-information__info .txt p {
										font-size: 20px;
										font-size: 2rem; }
						.p-information__info .link {
								margin: 48px 0; }
								.p-information__info .link a {
										font-size: 18px;
										font-size: 1.8rem;
										padding: 20px; }
										.p-information__info .link a .arrow {
												right: 20px; }
								.p-information__info .link p {
										font-size: 15px;
										font-size: 1.5rem;
										margin-top: 12px; }
				.p-information .benefit {
						margin-top: 60px; }
						.p-information .benefit h6 {
								font-size: 16px;
								font-size: 1.6rem;
								margin-top: 30px; }
						.p-information .benefit p {
								font-size: 14px;
								font-size: 1.4rem; }
				.p-information .mw-wrap {
						overflow: scroll;
						padding: 0 24px; }
				.p-information .table2 {
						width: max-content;
						margin-top: 48px; }
						.p-information .table2 tr td {
								width: 140px;
								padding: 12px 16px; }
								.p-information .table2 tr td:last-child {
										width: 300px; } }

/*=======================================
sankaku detail
=========================================*/
.p-sankaku {
		padding-bottom: 200px;
		/* keyframes は角度配列のみでOK（steps で段階的に切り替える） */ }
		.p-sankaku__head {
				padding: 144px 0 180px;
				position: relative; }
				.p-sankaku__head__wrap {
						width: 74.285%;
						margin: 0 auto; }
				.p-sankaku__head .ttl h2 {
						font-size: 48px;
						font-size: 4.8rem;
						line-height: 150%;
						font-weight: 700; }
				.p-sankaku__head .txt {
						max-width: 500px;
						margin-left: auto;
						padding-top: 60px; }
				.p-sankaku__head .bg {
						position: absolute;
						top: 0;
						bottom: 0;
						left: 0;
						right: 0;
						margin: auto;
						width: fit-content;
						height: fit-content; }
						.p-sankaku__head .bg img {
								width: 34.571vw; }
		.p-sankaku__news {
				padding-bottom: 160px; }
				.p-sankaku__news .ttl {
						margin-bottom: 60px; }
						.p-sankaku__news .ttl h3 {
								font-size: 40px;
								font-size: 4rem;
								line-height: 150%;
								font-weight: 700; }
				.p-sankaku__news__wrap {
						width: 78.142%;
						margin: 0 auto; }
						.p-sankaku__news__wrap .txt p {
								font-size: 17px;
								font-size: 1.7rem;
								line-height: 150%; }
				.p-sankaku__news .news-list {
						margin: 36px 0 48px; }
				.p-sankaku__news .abutton {
						text-align: right; }
						.p-sankaku__news .abutton a {
								margin-left: auto; }
		.p-sankaku #contents2 {
				padding-top: 180px; }
		.p-sankaku .img-txt {
				width: 73.786%;
				margin-left: auto;
				padding-top: 60px; }
		.p-sankaku .fl .fl-l, .p-sankaku .fl .fl-r {
				width: 47.572%; }
		.p-sankaku .fl .fl-r {
				margin-left: auto;
				position: relative; }
				.p-sankaku .fl .fl-r .txt {
						width: fit-content;
						height: fit-content;
						position: absolute;
						margin: auto;
						top: 0;
						bottom: 0; }
		.p-sankaku .fl li {
				display: flex;
				margin-top: 60px; }
		.p-sankaku .fl h5 {
				font-size: 30px;
				font-size: 3rem;
				line-height: 175%;
				font-weight: 700;
				margin-bottom: 36px; }
		.p-sankaku p {
				font-size: 16px;
				font-size: 1.6rem;
				line-height: 200%;
				font-weight: 500; }
		.p-sankaku .navsticky-l {
				top: 0; }
		.p-sankaku .tilt-image.step {
				display: block;
				transform-origin: center center;
				animation: tiltStep 5s steps(1, end) infinite; }

@keyframes tiltStep {
		0% {
				transform: rotate(0deg); }
		25% {
				transform: rotate(7deg); }
		50% {
				transform: rotate(15deg); }
		75% {
				transform: rotate(7deg); }
		100% {
				transform: rotate(0deg); } }

/* ----------------------------- スマホ */
@media screen and (max-width: 767px) {
		.p-sankaku {
				padding-bottom: 120px; }
				.p-sankaku #concept {
						padding-top: 104px; }
				.p-sankaku #contents2 {
						padding-top: 80px; }
				.p-sankaku__head {
						padding: 48px 0 80px; }
						.p-sankaku__head__wrap {
								width: auto;
								margin-inline: 6.4%; }
						.p-sankaku__head .ttl h2 {
								font-size: 24px;
								font-size: 2.4rem; }
						.p-sankaku__head .txt {
								padding-top: 48px; }
						.p-sankaku__head .bg img {
								width: 66.5%;
								margin: auto; }
				.p-sankaku__news {
						padding-bottom: initial; }
						.p-sankaku__news__wrap {
								width: auto;
								margin-inline: 6.4%; }
						.p-sankaku__news .ttl {
								margin-bottom: 36px; }
								.p-sankaku__news .ttl h3 {
										font-size: 24px;
										font-size: 2.4rem; }
						.p-sankaku__news .news-list {
								margin: initial; }
				.p-sankaku .img-txt {
						width: auto;
						padding-top: 36px;
						padding-bottom: 36px; }
				.p-sankaku .fl li {
						display: block; }
						.p-sankaku .fl li .fl-l, .p-sankaku .fl li .fl-r {
								width: auto; }
						.p-sankaku .fl li .fl-l {
								width: 61.165%;
								margin: 0 auto; }
						.p-sankaku .fl li .fl-r .txt {
								position: initial; }
				.p-sankaku .fl h5 {
						font-size: 24px;
						font-size: 2.4rem;
						margin-top: 30px;
						margin-bottom: 30px; }
				.p-sankaku p {
						font-size: 14px;
						font-size: 1.4rem; } }

/*=======================================
policy detail
=========================================*/
.p-policy {
		padding-top: 120px;
		padding-bottom: 200px; }
		.p-policy p {
				font-size: 16px;
				font-size: 1.6rem;
				line-height: 200%;
				font-weight: 500;
				margin-top: 20px; }
				.p-policy p:first-child {
						margin-top: initial; }
		.p-policy h6 {
				font-size: 21px;
				font-size: 2.1rem;
				line-height: 175%;
				font-weight: 700;
				margin-top: 80px; }

/* ----------------------------- スマホ */
@media screen and (max-width: 767px) {
		.p-policy {
				padding-top: 60px;
				padding-bottom: 144px; }
				.p-policy p {
						font-size: 14px;
						font-size: 1.4rem; }
				.p-policy h6 {
						font-size: 18px;
						font-size: 1.8rem;
						margin-top: 48px; } }

/*=======================================
contact detail
=========================================*/
.p-contact {
		padding-top: 120px;
		padding-bottom: 200px; }
		.p-contact .ip {
				font-size: 17px;
				font-size: 1.7rem;
				line-height: 175%;
				font-weight: 500;
				margin-top: 64px; }

.form {
		padding-left: 40px; }
		.form-flex {
				margin-top: 40px; }
				.form-flex.mt0 {
						margin-top: initial; }
				.form-flex .fr {
						margin-top: 12px; }
		.form-ttl {
				font-size: 17px;
				font-size: 1.7rem;
				line-height: 150%;
				font-weight: 700; }
				.form-ttl span {
						font-size: 16px;
						font-size: 1.6rem;
						line-height: 150%;
						font-weight: 700;
						color: #FF2E00; }
		.form input[type="text"], .form input[type="name"], .form input[type="email"], .form select, .form textarea {
				font-size: 14px;
				font-size: 1.4rem;
				line-height: 175%;
				font-weight: 500;
				font-family: "YuGothic", "游ゴシック", "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Hiragino Sans", "Meiryo", sans-serif;
				color: #313131;
				background-color: #F5F5F5;
				padding: 20px;
				width: calc( 100% - 40px);
				border: initial;
				border-radius: 4px; }
		.form select {
				width: 100%;
				cursor: pointer; }
		.form input[type="submit"] {
				font-size: 14px;
				font-size: 1.4rem;
				line-height: 150%;
				font-weight: 700;
				font-family: "YuGothic", "游ゴシック", "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Hiragino Sans", "Meiryo", sans-serif;
				color: #FFF;
				background-color: #313131;
				border: initial;
				border-radius: 4px;
				padding: 15px 20px;
				cursor: pointer; }
		.form .wpcf7-form-control-wrap {
				display: block; }
				.form .wpcf7-form-control-wrap .wpcf7-list-item-label {
						font-size: 17px;
						font-size: 1.7rem;
						line-height: 175%;
						font-weight: 500; }
		.form .wpcf7-acceptance {
				display: block;
				margin: 60px 0; }
				.form .wpcf7-acceptance .wpcf7-list-item {
						margin: initial;
						cursor: pointer; }

/* ----------------------------- スマホ */
@media screen and (max-width: 767px) {
		.p-contact {
				padding-top: 60px;
				padding-bottom: 144px; }
				.p-contact p {
						font-size: 14px;
						font-size: 1.4rem; }
				.p-contact h6 {
						font-size: 18px;
						font-size: 1.8rem;
						margin-top: 48px; }
				.p-contact .ip {
						font-size: 14px;
						font-size: 1.4rem;
						margin-top: 36px; }
		.form {
				padding-left: initial;
				margin-top: 60px; }
				.form-ttl {
						font-size: 16px;
						font-size: 1.6rem; }
				.form .wpcf7-acceptance .wpcf7-list-item {
						margin: initial; } }

/*=======================================
news detail
=========================================*/
.p-news {
		padding-bottom: 200px; }
		.p-news .pagination {
				margin-top: 96px; }
		.p-news .category-list {
				margin-top: 6rem; }

.news-list li {
		margin-top: 12px;
		border-radius: 5px;
		background-color: #F5F5F5;
		transition: all ease .25s; }
		.news-list li:hover {
				transform: scale(1.03); }
				.news-list li:hover a .box .button .arrow1 {
						left: 36px; }
				.news-list li:hover a .box .button .arrow2 {
						left: 0; }
		.news-list li:first-child {
				margin-top: initial; }
		.news-list li.color-default {
				background-color: #F5F5F5; }
		.news-list li.color-beige {
				background-color: #EAE8C3; }
		.news-list li.color-olive {
				background-color: #E1E9DB; }
		.news-list li.color-orange {
				background-color: #FFCD82; }
		.news-list li.color-purple {
				background-color: #E1D5F0; }
		.news-list li a {
				display: flex;
				padding: 20px 20px 30px 20px;
				text-decoration: none; }
				.news-list li a .img {
						width: 38%;
						height: 225px; }
						.news-list li a .img img {
								width: 100%;
								height: 100%;
								object-fit: cover;
								border-radius: 6px; }
				.news-list li a .box {
						width: 58.64%;
						position: relative;
						margin-left: auto; }
						.news-list li a .box .top {
								display: flex; }
								.news-list li a .box .top .d {
										display: flex;
										align-items: flex-end; }
						.news-list li a .box .mid {
								margin-top: 30px;
								margin-bottom: 24px;
								margin-right: 15.2%; }
								.news-list li a .box .mid h3 {
										font-size: 20px;
										font-size: 2rem;
										line-height: 150%;
										font-weight: 700;
										display: -webkit-box;
										-webkit-box-orient: vertical;
										-webkit-line-clamp: 2;
										/* 制限したい行数が3の場合 */
										overflow: hidden; }

.news-list .new {
		font-size: 13px;
		font-size: 1.3rem;
		line-height: 100%;
		font-weight: 500;
		background-color: #F2FF00;
		padding: 2px 4px;
		margin-right: 8px;
		display: inline-block;
		border-radius: 2px; }

.news-list .year {
		font-size: 14px;
		font-size: 1.4rem;
		line-height: 125%;
		font-weight: 500;
		display: inline-block; }

.news-list .month {
		font-size: 36px;
		font-size: 3.6rem;
		line-height: 115%;
		font-weight: 500;
		align-self: flex-end;
		margin: -0.07em 0; }

.news-list .date {
		font-size: 56px;
		font-size: 5.6rem;
		line-height: 100%;
		font-weight: 500;
		margin: -0.07em 0; }

.news-list .category span {
		font-size: 12px;
		font-size: 1.2rem;
		line-height: 125%;
		font-weight: bold;
		padding: 4px 14px;
		border-radius: 20px;
		margin-left: 8px;
		background-color: #FADB55;
		display: inline-block; }
		.news-list .category span:first-child {
				margin-left: 16px; }

.news-list .tags span {
		font-size: 12px;
		font-size: 1.2rem;
		line-height: 125%;
		font-weight: 700;
		color: rgba(49, 49, 49, 0.6);
		padding-right: 20px; }
		.news-list .tags span:last-child {
				padding-right: initial; }

.news-list .label {
		position: absolute;
		top: 0;
		right: 0; }
		.news-list .label .finished {
				width: fit-content;
				margin-left: auto;
				position: relative;
				padding-left: 14px;
				margin-bottom: 8px; }
				.news-list .label .finished::before {
						content: "";
						width: 8px;
						height: 8px;
						border-radius: 50%;
						position: absolute;
						left: 0;
						top: 0;
						bottom: 0;
						margin: auto; }
				.news-list .label .finished p {
						font-size: 12px;
						font-size: 1.2rem;
						line-height: 125%;
						font-weight: 700; }
				.news-list .label .finished.event::before {
						background-color: #2474AE;
						opacity: 0.3; }
				.news-list .label .finished.recruit::before {
						background-color: #76AA2D;
						opacity: 0.3; }

.news-list .button {
		position: absolute;
		right: 0;
		bottom: 0;
		background-color: #313131;
		border-radius: 50%;
		width: 36px;
		height: 36px; }
		.news-list .button__wrap {
				top: 0;
				bottom: 0;
				left: 0;
				right: 0;
				margin: auto;
				width: 16px;
				height: 16px;
				position: absolute;
				overflow: hidden; }
		.news-list .button img {
				width: 16px;
				height: 16px; }
		.news-list .button .arrow1 {
				position: absolute;
				top: 0;
				bottom: 0;
				left: 0;
				right: 0;
				width: 16px;
				height: 16px;
				margin: auto; }
		.news-list .button .arrow2 {
				position: absolute;
				top: 0;
				bottom: 0;
				left: -36px;
				right: 0;
				width: 16px;
				height: 16px;
				margin: auto; }

.category-list {
		width: fit-content;
		display: flex;
		align-items: center;
		margin-bottom: 64px;
		margin-left: auto; }
		.category-list .name {
				margin-right: 30px; }
				.category-list .name p {
						font-size: 14px;
						font-size: 1.4rem;
						line-height: 125%;
						font-weight: 700; }
		.category-list ul.cat-list {
				display: flex; }
				.category-list ul.cat-list li {
						margin-right: 10px;
						border: 1px solid rgba(49, 49, 49, 0.15);
						border-radius: 100px;
						background-color: #FFF;
						transition: all ease .25s; }
						.category-list ul.cat-list li a {
								font-size: 13px;
								font-size: 1.3rem;
								line-height: 125%;
								font-weight: 700;
								display: block;
								color: #000;
								padding: 8px 20px;
								text-decoration: none;
								transition: all ease .25s; }
						.category-list ul.cat-list li:last-child {
								margin-right: initial; }
						.category-list ul.cat-list li.is-current, .category-list ul.cat-list li:hover {
								background-color: #313131; }
								.category-list ul.cat-list li.is-current a, .category-list ul.cat-list li:hover a {
										color: #FFF; }

.pagination {
		display: flex;
		align-items: center;
		position: relative; }
		.pagination a {
				text-decoration: none; }
		.pagination .prev,
		.pagination .next {
				position: absolute;
				top: -8px;
				background-color: #313131;
				font-size: 14px;
				font-size: 1.4rem;
				line-height: 150%;
				font-weight: 500;
				font-family: "Roboto", sans-serif;
				color: #FFF; }
		.pagination .prev {
				left: 0;
				padding: 10px 20px 10px 10px !important; }
		.pagination .next {
				right: 0;
				padding: 10px 10px 10px 20px !important; }
		.pagination .num {
				margin: 0 auto; }
				.pagination .num .current,
				.pagination .num a {
						font-size: 17px;
						font-size: 1.7rem;
						line-height: 150%;
						font-weight: 500;
						font-family: "Roboto", sans-serif;
						margin: 0 10px; }
				.pagination .num a {
						color: rgba(49, 49, 49, 0.5); }
						.pagination .num a:hover {
								color: #313131;
								border-bottom: 1px solid #313131; }
				.pagination .num .current {
						color: #313131;
						border-bottom: 1px solid #313131; }

.p-news-detail {
		padding-top: 120px;
		padding-bottom: 240px; }
		.p-news-detail__content {
				width: 78.14285%;
				margin: 0 auto;
				display: flex; }
				.p-news-detail__content__wrap {
						width: 61.15%; }
		.p-news-detail .op2 {
				width: 29.98%;
				margin-left: auto; }
				.p-news-detail .op2__wrap {
						background-color: #EAE8C3;
						border-radius: 6px;
						position: sticky;
						top: 120px; }
				.p-news-detail .op2 .ttl {
						padding: 20px 20px 12px 20px;
						border-bottom: 1px solid rgba(49, 49, 49, 0.15); }
						.p-news-detail .op2 .ttl h5 {
								font-size: 15px;
								font-size: 1.5rem;
								line-height: 150%;
								font-weight: 700; }
				.p-news-detail .op2 .content {
						padding: 30px 20px 20px 20px; }
				.p-news-detail .op2 .txt p {
						font-size: 16px;
						font-size: 1.6rem;
						line-height: 150%;
						font-weight: 700; }
				.p-news-detail .op2 a.btn {
						padding: 16px;
						margin-top: 16px;
						display: block;
						font-size: 14px;
						font-size: 1.4rem;
						line-height: 150%;
						font-weight: 700;
						color: #FFF;
						background-color: #313131;
						border-radius: 6px;
						text-align: center;
						text-decoration: none;
						transition: all ease .25s; }
						.p-news-detail .op2 a.btn:hover {
								color: #FADB55; }
				.p-news-detail .op2 a.btn.disabled {
						pointer-events: none;
						/* クリックできなくする */
						opacity: 0.5;
						/* 半透明にして非活性感を出す */
						background-color: #999;
						/* 好みに応じて色変更 */ }
		.p-news-detail__heading {
				margin-bottom: 80px; }
				.p-news-detail__heading .head {
						display: flex;
						column-gap: 2rem; }
						.p-news-detail__heading .head::before, .p-news-detail__heading .head::after {
								content: none; }
				.p-news-detail__heading .title {
						margin: 24px 0; }
						.p-news-detail__heading .title h1 {
								font-size: 36px;
								font-size: 3.6rem;
								line-height: 150%;
								font-weight: 700; }
				.p-news-detail__heading .thumbnail {
						margin-top: 60px; }
						.p-news-detail__heading .thumbnail img {
								border-radius: 6px; }
		.p-news-detail .news-list .label {
				position: initial; }
				.p-news-detail .news-list .label .finished {
						margin-left: initial; }
		.p-news-detail .news-list .category {
				margin-bottom: 30px; }
				.p-news-detail .news-list .category span {
						margin-left: initial;
						margin-right: 16px; }
						.p-news-detail .news-list .category span:first-child {
								margin-left: initial; }
						.p-news-detail .news-list .category span:last-child {
								margin-right: initial; }
		.p-news-detail .prevbutton {
				margin-top: 96px; }

.prevbutton .abutton a {
		padding: 1.5rem 2rem 1.5rem 1rem; }

.prevbutton .abutton .icon {
		transform: rotate(180deg); }

/* ----------------------------- スマホ */
@media screen and (max-width: 767px) {
		.p-news {
				padding-bottom: 104px; }
				.p-news .category-list {
						margin-top: 3.6rem;
						margin-left: initial; }
				.p-news .pagination {
						margin-top: 72px; }
		.p-news-detail {
				padding-top: 146px;
				padding-bottom: 104px; }
				.p-news-detail__heading .title {
						margin: 16px 0; }
						.p-news-detail__heading .title h1 {
								font-size: 24px;
								font-size: 2.4rem; }
				.p-news-detail__heading .thumbnail {
						margin-top: 40px; }
				.p-news-detail .news-list .category {
						margin-bottom: 24px; }
				.p-news-detail__content {
						width: 87.2%;
						margin: 0 auto;
						display: block; }
						.p-news-detail__content__wrap {
								width: auto; }
				.p-news-detail .op2 {
						width: auto; }
				.p-news-detail .prevbutton {
						margin-top: 60px; }
		.news-list li a {
				display: block; }
				.news-list li a .img {
						width: 100%;
						height: 162px;
						margin-bottom: 12px; }
				.news-list li a .box {
						width: 100%; }
						.news-list li a .box .top .d {
								display: block; }
						.news-list li a .box .mid {
								margin-top: 20px;
								margin-bottom: 20px;
								margin-right: initial; }
								.news-list li a .box .mid h3 {
										font-size: 17px;
										font-size: 1.7rem; }
						.news-list li a .box .year {
								font-size: 12px;
								font-size: 1.2rem; }
						.news-list li a .box .month {
								font-size: 34px;
								font-size: 3.4rem;
								display: inline-block; }
						.news-list li a .box .date {
								font-size: 48px;
								font-size: 4.8rem;
								display: inline-block; }
						.news-list li a .box .category {
								display: flex;
								flex-wrap: wrap;
								padding-top: 4px; }
								.news-list li a .box .category span {
										font-size: 12px;
										font-size: 1.2rem;
										margin-left: initial;
										margin-right: 8px;
										display: block;
										margin-top: 8px; }
										.news-list li a .box .category span:first-child {
												margin-left: initial; }
						.news-list li a .box .label .finished {
								padding-left: 12px;
								margin-bottom: 6px; }
								.news-list li a .box .label .finished::before {
										content: "";
										width: 8px;
										height: 8px; }
								.news-list li a .box .label .finished p {
										font-size: 11px;
										font-size: 1.1rem; }
		.category-list {
				display: block;
				margin-bottom: 48px; }
				.category-list ul.cat-list {
						flex-wrap: wrap;
						margin-top: 10px; }
						.category-list ul.cat-list li {
								margin-top: 10px;
								margin-right: 8px; }
								.category-list ul.cat-list li a {
										font-size: 12px;
										font-size: 1.2rem;
										padding: 8px 12px; } }

/*=======================================
community detail
=========================================*/
.p-intro-desc {
		width: 74.286%;
		margin: 14.4rem auto 12rem; }
		.p-intro-desc h2 {
				font-size: 4.8rem;
				line-height: 1.5; }
		.p-intro-desc .heading-desc {
				margin-top: 6rem;
				width: 48.1%;
				margin-left: auto; }
				.p-intro-desc .heading-desc p {
						line-height: 2;
						font-size: 1.6rem;
						margin-bottom: 4.8rem; }
				.p-intro-desc .heading-desc a {
						width: 200px;
						width: fit-content;
						height: 54px;
						height: auto;
						display: flex;
						align-items: center;
						gap: 1.2rem;
						justify-content: center;
						font-size: 1.5rem;
						background-color: #313131;
						padding: 1.5rem 1rem 1.5rem 2rem;
						border-radius: 3px;
						color: #fff;
						box-sizing: border-box;
						text-decoration: none; }
						.p-intro-desc .heading-desc a .line {
								height: 12px;
								width: 1px;
								background-color: rgba(255, 255, 255, 0.15); }
						.p-intro-desc .heading-desc a .icon {
								overflow: hidden;
								display: flex;
								align-items: center;
								justify-content: center;
								width: 20px;
								height: 20px; }
								.p-intro-desc .heading-desc a .icon img {
										display: block;
										width: 20px;
										height: auto;
										transition: .3s; }
						.p-intro-desc .heading-desc a:hover .icon img {
								animation: arrow-slide-vertical .3s; }

@keyframes arrow-slide-vertical {
		0% {
				transform: translateY(0);
				opacity: 1; }
		50% {
				transform: translateY(-100%);
				opacity: 0; }
		51% {
				transform: translateY(100%);
				opacity: 0; }
		100% {
				transform: translateY(0);
				opacity: 1; } }

.p-business-pillars {
		width: 89.7%;
		padding: 12rem 0 14.4rem;
		margin: 0 auto;
		display: flex;
		justify-content: space-between;
		box-sizing: border-box; }
		.p-business-pillars .heading {
				flex: 1; }
				.p-business-pillars .heading h2 {
						font-size: 4rem;
						line-height: 1.5;
						margin-bottom: 3.6rem; }
				.p-business-pillars .heading p {
						font-size: 1.6rem;
						line-height: 1.75; }
		.p-business-pillars .business-contents {
				flex: 0 0 65.6%; }
				.p-business-pillars .business-contents ul {
						display: flex;
						flex-direction: column; }
						.p-business-pillars .business-contents ul li {
								display: flex;
								gap: 4rem;
								margin-bottom: 6rem;
								align-items: center; }
								.p-business-pillars .business-contents ul li .img {
										width: 47.6%; }
								.p-business-pillars .business-contents ul li .desc {
										width: 47.6%; }
										.p-business-pillars .business-contents ul li .desc h3 {
												font-size: 2.4rem;
												margin-bottom: 3.6rem;
												line-height: 1.5; }
										.p-business-pillars .business-contents ul li .desc p {
												font-size: 1.6rem;
												line-height: 1.75; }

.p-activities {
		position: relative;
		margin: 0 auto;
		padding: 12rem 0 22.8rem;
		background-color: #eae5c9;
		background-color: #EAE8C3; }
		.p-activities::after {
				content: "";
				position: absolute;
				bottom: 0;
				left: 0;
				width: 100%;
				height: 6.8rem;
				background-color: #fff;
				z-index: 0; }
		.p-activities_inner {
				display: flex;
				justify-content: space-between;
				position: relative;
				z-index: 1;
				width: 89.7%;
				margin: 0 auto; }
		.p-activities_heading {
				flex: 1; }
				.p-activities_heading h2 {
						font-size: 4rem;
						line-height: 1.5;
						margin-bottom: 3.6rem; }
				.p-activities_heading p {
						font-size: 1.6rem;
						line-height: 1.75; }
		.p-activities_list {
				flex: 0 0 65.6%; }
				.p-activities_list ul {
						list-style: none;
						display: flex;
						flex-direction: column; }
						.p-activities_list ul li {
								display: flex;
								justify-content: space-between;
								align-items: center;
								border-bottom: 1px solid rgba(0, 0, 0, 0.2);
								padding: 3.6rem 0;
								cursor: pointer;
								transition: .2s;
								flex-wrap: wrap;
								row-gap: 3rem; }
								.p-activities_list ul li:first-child {
										border-top: 1px solid rgba(0, 0, 0, 0.2); }
								.p-activities_list ul li .title {
										display: flex;
										align-items: baseline;
										flex-wrap: wrap;
										row-gap: 2rem; }
										.p-activities_list ul li .title h3 {
												font-size: 2.1rem;
												font-weight: bold;
												line-height: 1.5; }
										.p-activities_list ul li .title .tag {
												font-size: 1.4rem;
												color: #555;
												margin-left: 0.8rem;
												line-height: 1.5; }
								.p-activities_list ul li .circle {
										display: flex;
										align-items: center;
										justify-content: center;
										background-color: #313131;
										width: 36px;
										height: 36px;
										border: solid 1px rgba(49, 49, 49, 0.15);
										border-radius: 100px;
										overflow: hidden; }
										.p-activities_list ul li .circle img {
												transition: transform 0.4s ease; }
								.p-activities_list ul li:hover {
										padding-left: 6px;
										border-bottom: 1px solid black;
										transition: .2s; }
								.p-activities_list ul li:hover .circle img {
										animation: arrow-slide 0.3s ease forwards; }

@keyframes arrow-slide {
		0% {
				transform: translateX(0);
				opacity: 1; }
		25% {
				transform: translateX(100%);
				opacity: 0; }
		26% {
				transform: translateX(-100%);
				opacity: 0; }
		100% {
				transform: translateX(0);
				opacity: 1; } }

@keyframes arrow-slide {
		0% {
				transform: translateX(0); }
		40% {
				transform: translateX(100%);
				opacity: 0; }
		41% {
				transform: translateX(-100%);
				opacity: 0; }
		100% {
				transform: translateX(0);
				opacity: 1; } }
		.p-activities-image {
				position: absolute;
				margin-top: -260px;
				width: 28%;
				max-width: 340px;
				z-index: 1;
				bottom: 0; }
				.p-activities-image img {
						width: 100%;
						height: auto;
						display: block; }

.p-modal {
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 100vh;
		background: rgba(0, 0, 0, 0.2);
		z-index: 1000;
		display: flex;
		justify-content: flex-end;
		opacity: 0;
		pointer-events: none;
		transition: opacity 0.2s ease; }

.p-modal.is-active {
		opacity: 1;
		pointer-events: auto; }

.p-modal__content {
		width: 56.3%;
		height: 100%;
		background: #fff;
		box-shadow: -4px 0 20px rgba(0, 0, 0, 0.1);
		padding: 12rem 8rem 8rem;
		overflow-y: auto;
		position: relative;
		box-sizing: border-box; }
		.p-modal__content .title h3 {
				font-size: 2.4rem;
				line-height: 1.5;
				margin-bottom: 4px; }
		.p-modal__content .title span {
				font-size: 1.4rem;
				line-height: 1.5;
				display: block; }
		.p-modal__content .main {
				margin-top: 6rem; }
				.p-modal__content .main p {
						font-size: 1.6rem;
						line-height: 1.75; }
				.p-modal__content .main .detail {
						margin-top: 6rem; }
						.p-modal__content .main .detail h3 {
								font-size: 2.1rem;
								line-height: 1.5;
								margin-bottom: 3rem; }
						.p-modal__content .main .detail p {
								margin-bottom: 3rem; }
						.p-modal__content .main .detail .flex {
								display: flex;
								flex-wrap: wrap;
								gap: 2.8rem;
								margin-top: 4.8rem; }
								.p-modal__content .main .detail .flex::before {
										content: none; }
								.p-modal__content .main .detail .flex .img {
										width: calc((100% - 28px) / 2); }
						.p-modal__content .main .detail .full {
								margin-top: 6rem; }
								.p-modal__content .main .detail .full .img {
										width: 100%; }
						.p-modal__content .main .detail a {
								color: #0168B3;
								font-size: 1.6rem; }

.p-modal__close {
		position: fixed;
		top: 3.6rem;
		right: 2.8rem;
		background: none;
		border: none;
		cursor: pointer; }
		.p-modal__close .circle {
				width: 36px;
				height: 36px;
				background-color: #313131;
				border-radius: 100px;
				display: flex;
				align-items: center;
				justify-content: center;
				transition: .2s; }
		.p-modal__close .circle:hover {
				transform: scale(1.1); }

.p-member-list {
		width: 89.7%;
		padding: 13.2rem 0 12rem;
		margin: 0 auto;
		display: flex;
		justify-content: space-between; }
		.p-member-list .heading h2 {
				font-size: 4rem;
				line-height: 1.5;
				margin-bottom: 3.6rem; }
		.p-member-list .heading p {
				font-size: 1.6rem;
				line-height: 1.75; }
		.p-member-list .list-contents {
				flex: 0 0 65.6%; }
				.p-member-list .list-contents ul {
						display: flex;
						flex-direction: column; }
						.p-member-list .list-contents ul li {
								margin-bottom: 8rem; }
								.p-member-list .list-contents ul li:last-child {
										margin-bottom: 0; }
								.p-member-list .list-contents ul li h3 {
										font-size: 2.4rem;
										line-height: 1.5;
										margin-bottom: 3.6rem;
										padding-bottom: 8px;
										border-bottom: solid 1px rgba(49, 49, 49, 0.15); }
								.p-member-list .list-contents ul li p {
										font-size: 1.6rem;
										line-height: 2; }
				.p-member-list .list-contents span {
						font-size: 1.6rem;
						margin-left: auto;
						margin-top: 4.8rem;
						display: block;
						width: fit-content; }

.p-membership-information {
		padding: 12rem 0;
		background-color: #F2F5E4; }
		.p-membership-information .inner {
				width: 89.7%;
				margin: 0 auto;
				display: flex;
				justify-content: space-between; }
				.p-membership-information .inner::before, .p-membership-information .inner::after {
						content: none; }
		.p-membership-information .heading h2 {
				font-size: 4rem;
				line-height: 1.5;
				margin-bottom: 3.6rem; }
		.p-membership-information .heading p {
				font-size: 1.6rem;
				line-height: 1.75; }
		.p-membership-information .list-contents {
				flex: 0 0 65.6%; }
				.p-membership-information .list-contents::before, .p-membership-information .list-contents::after {
						content: none; }
				.p-membership-information .list-contents ul {
						display: flex;
						flex-direction: column; }
						.p-membership-information .list-contents ul li {
								margin-bottom: 8rem; }
								.p-membership-information .list-contents ul li:last-child {
										margin-bottom: 0; }
								.p-membership-information .list-contents ul li h3 {
										font-size: 2.4rem;
										line-height: 1.5;
										margin-bottom: 3.6rem;
										padding-bottom: 8px;
										border-bottom: solid 1px rgba(49, 49, 49, 0.15); }
								.p-membership-information .list-contents ul li p {
										font-size: 1.6rem;
										line-height: 2; }
										.p-membership-information .list-contents ul li p span {
												display: block;
												font-size: 1.4rem;
												margin-left: 0; }
								.p-membership-information .list-contents ul li .flex {
										display: flex;
										column-gap: 6px;
										margin-bottom: 1.6rem; }
										.p-membership-information .list-contents ul li .flex span {
												margin: 0; }
										.p-membership-information .list-contents ul li .flex:last-child {
												margin-bottom: 0; }
				.p-membership-information .list-contents span {
						font-size: 1.6rem;
						margin-left: auto;
						display: block;
						width: fit-content; }
				.p-membership-information .list-contents .button {
						display: flex;
						flex-wrap: wrap;
						gap: 3rem;
						margin-top: 4.8rem; }
						.p-membership-information .list-contents .button::before, .p-membership-information .list-contents .button::after {
								content: none; }
						.p-membership-information .list-contents .button a {
								font-weight: bold;
								width: fit-content;
								height: 54px;
								height: auto;
								display: flex;
								align-items: center;
								justify-content: center;
								gap: 1.2rem;
								font-size: 1.5rem;
								background-color: #313131;
								padding: 1.5rem 1rem 1.5rem 2rem;
								border-radius: 3px;
								color: #fff;
								box-sizing: border-box;
								text-decoration: none;
								transition: .2s; }
								.p-membership-information .list-contents .button a .line {
										height: 12px;
										width: 1px;
										background-color: rgba(255, 255, 255, 0.15); }
								.p-membership-information .list-contents .button a .icon {
										display: flex;
										align-items: center;
										justify-content: center;
										width: 16px;
										height: 16px;
										overflow: hidden; }
										.p-membership-information .list-contents .button a .icon img {
												display: block;
												width: 16px;
												height: auto;
												transition: .2s; }
								.p-membership-information .list-contents .button a:hover .icon img {
										animation: arrow-slide .3s; }

@keyframes arrow-slide {
		0% {
				transform: translateX(0); }
		40% {
				transform: translateX(100%);
				opacity: 0; }
		41% {
				transform: translateX(-100%);
				opacity: 0; }
		100% {
				transform: translateX(0);
				opacity: 1; } }
				.p-membership-information .list-contents .button.external_link a:hover .icon img {
						animation: arrow-right-slide .3s; }

@keyframes arrow-right-slide {
		0% {
				transform: translate(0, 0) rotate(0deg);
				opacity: 1; }
		40% {
				transform: translate(80%, -80%) rotate(0deg);
				opacity: 0; }
		41% {
				transform: translate(-80%, 80%) rotate(0deg);
				opacity: 0; }
		100% {
				transform: translate(0, 0) rotate(0deg);
				opacity: 1; } }
				.p-membership-information .list-contents .button.yellow a {
						background-color: #FADB55;
						color: #313131; }
						.p-membership-information .list-contents .button.yellow a .line {
								height: 12px;
								width: 1px;
								background-color: rgba(49, 49, 49, 0.15); }
						.p-membership-information .list-contents .button.yellow a .icon {
								overflow: hidden;
								display: flex;
								align-items: center;
								justify-content: center;
								width: 20px;
								height: 20px; }
								.p-membership-information .list-contents .button.yellow a .icon img {
										display: block;
										width: 20px;
										height: auto;
										transition: .3s; }
						.p-membership-information .list-contents .button.yellow a:hover .icon img {
								animation: arrow-slide-vertical .3s; }

@keyframes arrow-slide-vertical {
		0% {
				transform: translateY(0);
				opacity: 1; }
		50% {
				transform: translateY(-100%);
				opacity: 0; }
		51% {
				transform: translateY(100%);
				opacity: 0; }
		100% {
				transform: translateY(0);
				opacity: 1; } }

.p-membership-information .list-contents .button.yellow a .line {
		height: 12px;
		width: 1px;
		background-color: rgba(49, 49, 49, 0.15); }

.p-faq-list {
		width: 89.7%;
		padding: 13.2rem 0 18rem;
		margin: 0 auto;
		display: flex;
		justify-content: space-between; }
		.p-faq-list .heading h2 {
				font-size: 4rem;
				line-height: 1.5;
				margin-bottom: 3.6rem; }
		.p-faq-list .heading p {
				font-size: 1.6rem;
				line-height: 1.75; }
		.p-faq-list .list-contents {
				flex: 0 0 65.6%; }
				.p-faq-list .list-contents ul {
						display: flex;
						flex-direction: column; }
						.p-faq-list .list-contents ul li {
								margin-bottom: 8rem;
								display: flex;
								gap: 4rem; }
								.p-faq-list .list-contents ul li:last-child {
										margin-bottom: 0; }
								.p-faq-list .list-contents ul li span {
										display: flex;
										font-size: 2.4rem;
										align-items: center;
										justify-content: center;
										width: 45px;
										height: 45px;
										font-family: "Roboto", sans-serif;
										background-color: #F2F5E4;
										margin-top: 0;
										border-radius: 100px; }
								.p-faq-list .list-contents ul li .faq {
										flex: 1;
										margin-top: 6px; }
										.p-faq-list .list-contents ul li .faq h3 {
												font-size: 1.8rem;
												line-height: 1.75;
												margin-bottom: 3.6rem; }
										.p-faq-list .list-contents ul li .faq p {
												font-size: 1.7rem;
												line-height: 2; }
												.p-faq-list .list-contents ul li .faq p a {
														color: #0168B3; }
				.p-faq-list .list-contents span {
						font-size: 1.6rem;
						margin-left: auto;
						margin-top: 4.8rem;
						display: block;
						width: fit-content; }

/* ----------------------------- スマホ */
@media screen and (max-width: 767px) {
		.c-page-toptitle1 .img {
				margin-top: 4.8rem;
				aspect-ratio: 327 / 375;
				overflow: hidden; }
				.c-page-toptitle1 .img img {
						width: 100%;
						height: 100%;
						object-fit: cover;
						display: block; }
		.p-intro-desc {
				width: 100%;
				padding: 0 24px;
				margin: 4.8rem auto 3.2rem;
				box-sizing: border-box; }
				.p-intro-desc h2 {
						font-size: 2.4rem; }
				.p-intro-desc .heading-desc {
						margin-top: 4.8rem;
						width: 100%;
						margin-left: auto; }
						.p-intro-desc .heading-desc p {
								line-height: 2;
								font-size: 1.4rem;
								margin-bottom: 4.8rem; }
		.p-business-pillars {
				width: 100%;
				padding: 0 2.4rem 8rem;
				display: block; }
				.p-business-pillars .heading {
						margin-bottom: 4rem; }
						.p-business-pillars .heading h2 {
								font-size: 2.4rem;
								line-height: 1.5;
								margin-bottom: 1.2rem; }
						.p-business-pillars .heading p {
								font-size: 1.4rem; }
				.p-business-pillars .business-contents {
						width: 100%; }
						.p-business-pillars .business-contents ul {
								display: flex;
								flex-direction: column; }
								.p-business-pillars .business-contents ul li {
										display: block; }
										.p-business-pillars .business-contents ul li:last-child {
												margin-bottom: 0; }
										.p-business-pillars .business-contents ul li .img {
												width: 100%; }
										.p-business-pillars .business-contents ul li .desc {
												margin-top: 3.6rem;
												width: 100%; }
												.p-business-pillars .business-contents ul li .desc h3 {
														font-size: 2rem;
														margin-bottom: 2.4rem; }
												.p-business-pillars .business-contents ul li .desc p {
														font-size: 1.4rem;
														line-height: 1.75; }
		.p-activities {
				position: relative;
				margin: 0 auto;
				padding: 8rem 0 34rem;
				background-color: #eae5c9;
				background-color: #EAE8C3; }
				.p-activities::after {
						height: 9.6rem; }
				.p-activities_inner {
						display: block;
						width: 100%;
						padding: 0 24px;
						box-sizing: border-box; }
				.p-activities_heading {
						margin-bottom: 4.8rem; }
						.p-activities_heading h2 {
								font-size: 2.4rem;
								margin-bottom: 1.2rem; }
						.p-activities_heading p {
								font-size: 1.4rem; }
				.p-activities_list ul li {
						padding: 2rem 0;
						flex-wrap: nowrap;
						gap: 4rem; }
						.p-activities_list ul li .title {
								flex-wrap: wrap;
								row-gap: 1.2rem;
								flex: 1; }
								.p-activities_list ul li .title h3 {
										font-size: 1.6rem; }
								.p-activities_list ul li .title .tag {
										font-size: 1.4rem; }
						.p-activities_list ul li .circle {
								width: 26px;
								height: 26px; }
				.p-activities-image {
						position: absolute;
						width: 53.3%; }
		.p-modal__content {
				width: 90%;
				height: 100dvh;
				background: #fff;
				box-shadow: -4px 0 20px rgba(0, 0, 0, 0.1);
				padding: 8rem 3.6rem 6rem; }
				.p-modal__content .title h3 {
						font-size: 2rem; }
				.p-modal__content .main {
						margin-top: 4.8rem; }
						.p-modal__content .main p {
								font-size: 1.4rem; }
						.p-modal__content .main .detail {
								margin-top: 4.8rem; }
								.p-modal__content .main .detail h3 {
										font-size: 1.8rem; }
								.p-modal__content .main .detail p {
										margin-bottom: 2.4rem; }
								.p-modal__content .main .detail .flex {
										flex-direction: column;
										gap: 3rem;
										margin-top: 3.6rem; }
										.p-modal__content .main .detail .flex::before, .p-modal__content .main .detail .flex::after {
												content: none; }
										.p-modal__content .main .detail .flex .img {
												width: 100%; }
								.p-modal__content .main .detail .full {
										margin-top: 4.8rem; }
										.p-modal__content .main .detail .full .img {
												width: 100%; }
								.p-modal__content .main .detail a {
										color: #0168B3;
										font-size: 1.4rem; }
		.p-modal__close {
				top: 1.6rem;
				right: 1.2rem;
				padding: 0; }
				.p-modal__close .circle {
						width: 34px;
						height: 34px; }
				.p-modal__close .circle:hover {
						transform: scale(1.1); }
		.p-member-list {
				width: 100%;
				padding: 8rem 2.4rem;
				display: block;
				box-sizing: border-box; }
				.p-member-list .heading {
						margin-bottom: 4.8rem; }
						.p-member-list .heading h2 {
								font-size: 2.4rem;
								margin-bottom: 1.2rem; }
						.p-member-list .heading p {
								font-size: 1.4rem; }
				.p-member-list .list-contents ul {
						display: flex;
						flex-direction: column; }
						.p-member-list .list-contents ul li {
								margin-bottom: 6rem; }
								.p-member-list .list-contents ul li h3 {
										font-size: 2rem;
										margin-bottom: 3rem; }
								.p-member-list .list-contents ul li p {
										font-size: 1.4rem;
										line-height: 2; }
				.p-member-list .list-contents span {
						font-size: 1.4rem;
						margin-top: 4rem; }
		.p-membership-information {
				padding: 8rem 2.4rem 9.6rem; }
				.p-membership-information .inner {
						width: 100%;
						display: block; }
				.p-membership-information .heading {
						margin-bottom: 4.8rem; }
						.p-membership-information .heading h2 {
								font-size: 2.4rem;
								line-height: 1.5;
								margin-bottom: 1.2rem; }
						.p-membership-information .heading p {
								font-size: 1.4rem; }
								.p-membership-information .heading p br {
										display: none; }
				.p-membership-information .list-contents ul li h3 {
						font-size: 2rem;
						margin-bottom: 3rem; }
				.p-membership-information .list-contents ul li p {
						font-size: 1.4rem; }
				.p-membership-information .list-contents ul li .flex {
						display: flex;
						column-gap: 6px;
						margin-bottom: 1.6rem; }
						.p-membership-information .list-contents ul li .flex span {
								margin: 0;
								font-size: 1.4rem; }
				.p-membership-information .list-contents span {
						font-size: 1.6rem;
						margin-left: auto;
						display: block;
						width: fit-content; }
				.p-membership-information .list-contents .button {
						gap: 12px;
						margin-top: 4rem; }
						.p-membership-information .list-contents .button a {
								font-size: 1.4rem; }
		.p-faq-list {
				width: 100%;
				padding: 8rem 2.4rem 12rem;
				display: block;
				box-sizing: border-box; }
				.p-faq-list .heading h2 {
						font-size: 2.4rem;
						line-height: 1.5;
						margin-bottom: 4.8rem; }
				.p-faq-list .list-contents ul {
						display: flex;
						flex-direction: column; }
						.p-faq-list .list-contents ul li {
								margin-bottom: 4rem;
								gap: 2rem; }
								.p-faq-list .list-contents ul li:last-child {
										margin-bottom: 0; }
								.p-faq-list .list-contents ul li span {
										display: flex;
										font-size: 2.1rem;
										width: 36px;
										height: 36px; }
								.p-faq-list .list-contents ul li .faq {
										margin-top: 0; }
										.p-faq-list .list-contents ul li .faq h3 {
												font-size: 1.6rem;
												margin-bottom: 2rem; }
										.p-faq-list .list-contents ul li .faq p {
												font-size: 1.5rem; } }

/* ----------------------------- スマホ */
@media screen and (max-width: 767px) {
		body {
				line-height: 160%;
				min-width: initial; }
		.container,
		.container-750 {
				max-width: initial; }
		.container1 {
				width: 87.2%; }
		.container2 {
				width: auto;
				margin-inline: 6.4%; }
				.container2__wrap {
						display: block; }
				.container2 .l {
						width: auto; }
				.container2 .r {
						width: auto; }
				.container2__ttl h3 {
						font-size: 24px;
						font-size: 2.4rem; }
				.container2__ttl p.en {
						font-size: 13px;
						font-size: 1.3rem; }
				.container2 .sub {
						margin-bottom: 48px; }
						.container2 .sub p.en {
								font-size: 12px;
								font-size: 1.2rem;
								margin-bottom: 12px; }
						.container2 .sub h3 {
								font-size: 24px;
								font-size: 2.4rem; }
		.container3 {
				width: 87.2%; }
				.container3__wrap {
						display: block; }
				.container3 .l {
						width: auto; }
				.container3 .r {
						width: auto; }
		.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; }
		.table1 tr th {
				width: 100px; }
		.table1 tr th, .table1 tr td {
				font-size: 14px;
				font-size: 1.4rem;
				padding: 24px 0; }
		.table3 tr {
				margin-top: 36px;
				display: block; }
				.table3 tr:first-child {
						margin-top: initial; }
				.table3 tr td {
						font-size: 16px;
						font-size: 1.6rem;
						display: block;
						padding: initial; }
						.table3 tr td:first-child {
								margin-bottom: 20px; }
						.table3 tr td span {
								font-size: 14px;
								font-size: 1.4rem;
								margin-top: 18px; }
		.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-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; } }
