@charset "UTF-8";

/* =======================================
記事詳細
========================================*/
#entrybody {
		font-size: 1.14286vw;
		margin-top: 0;
		word-break: break-all;
		line-height: 180%; }
		@media screen and (max-width: 767px) {
				#entrybody {
						font-size: 4.38356vw; } }
		#entrybody ul, #entrybody ol {
				margin-top: 12px;
				margin-bottom: 12px;
				list-style-position: inside;
				text-align: left; }
				#entrybody ul ul, #entrybody ul ol, #entrybody ol ul, #entrybody ol ol {
						margin-left: 2em; }
				#entrybody ul li, #entrybody ol li {
						text-align: left; }
		#entrybody ol {
				list-style-type: decimal; }
		#entrybody li ul {
				margin-top: 3px; }
		#entrybody li li {
				font-size: 0.92857vw; }
				@media screen and (max-width: 767px) {
						#entrybody li li {
								font-size: 3.56164vw; } }
		#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 {
				line-height: 180%;
				margin-bottom: 1.2em;
				clear: both;
				*zoom: 1; }
				#entrybody p:after {
						display: block;
						content: "";
						clear: both; }
		#entrybody blockquote {
				margin-top: 15px;
				margin-bottom: 15px;
				background: #d6e1e1;
				border-radius: 10px;
				padding: 4.545% 5%; }
				#entrybody blockquote cite {
						font-style: italic; }
				#entrybody blockquote p:last-child {
						margin-bottom: 0; }
				#entrybody blockquote a {
						color: #333; }
		#entrybody img {
				margin-bottom: 1em; }
		#entrybody iframe {
				max-width: 100%; }
		#entrybody .u-youtube-wrap {
				padding-top: 56.25%; }
		#entrybody h1 {
				font-size: 2vw;
				line-height: 150%; }
				@media screen and (max-width: 767px) {
						#entrybody h1 {
								font-size: 7.67123vw; } }
		#entrybody h2 {
				font-size: 1.42857vw;
				line-height: 150%;
				border-bottom: 1px solid #DADADA;
				padding-bottom: 25px;
				margin-bottom: 35px;
				position: relative;
				margin-top: 50px; }
				@media screen and (max-width: 767px) {
						#entrybody h2 {
								font-size: 5.47945vw; } }
				#entrybody h2:after {
						display: block;
						content: "";
						position: absolute;
						bottom: -1px;
						left: 0;
						width: 180px;
						border-bottom: 4px solid #470F37; }
		#entrybody h3 {
				font-size: 1.5vw;
				line-height: 150%; }
				@media screen and (max-width: 767px) {
						#entrybody h3 {
								font-size: 5.75342vw; } }
		#entrybody h4 {
				font-size: 1.28571vw;
				line-height: 150%; }
				@media screen and (max-width: 767px) {
						#entrybody h4 {
								font-size: 4.93151vw; } }
		#entrybody h5 {
				font-size: 1.14286vw;
				line-height: 150%; }
				@media screen and (max-width: 767px) {
						#entrybody h5 {
								font-size: 4.38356vw; } }
		#entrybody h6 {
				font-size: 1.07143vw;
				line-height: 150%; }
				@media screen and (max-width: 767px) {
						#entrybody h6 {
								font-size: 4.10959vw; } }
		#entrybody table {
				width: 100%; }
				#entrybody table thead {
						background-color: #470F37;
						color: #fff;
						font-size: 1.07143vw; }
						@media screen and (max-width: 767px) {
								#entrybody table thead {
										font-size: 4.10959vw; } }
						#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 .flex {
				display: flex; }
				#entrybody .flex .order1 {
						margin-right: 20px; }

.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: 0.85714vw;
		line-height: 18px;
		text-align: center;
		margin-bottom: 20px;
		padding: 4px;
		border-radius: 0; }
		@media screen and (max-width: 767px) {
				.wp-caption {
						font-size: 3.28767vw; } }
		.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) {
		#entrybody .flex {
				display: block; }
				#entrybody .flex .order1 {
						margin-right: 0; }
		.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; } }

/* ----------------------------- 全体 */
html {
		font-size: 0.875vw;
		height: 100%; }

body {
		font-size: 1.14286vw;
		font-family: Helvetica, "游ゴシック体", YuGothic, "Noto Sans JP", Helvetica, "ヒラギノ角ゴPro W3", "Hiragino Kaku Gothic Pro", "小塚ゴシック Pro L", "Kozuka Gothic Pro Light", "メイリオ", Meiryo, "ＭＳ　Ｐゴシック", "MS PGothic", sans-serif;
		line-height: 120%;
		color: #302D39;
		background-color: #eee;
		position: relative;
		-webkit-text-size-adjust: 100%;
		letter-spacing: 0.05em;
		font-feature-settings: "palt";
		height: 100%; }
		@media screen and (max-width: 767px) {
				body {
						font-size: 4.38356vw; } }
		body.is-loading {
				width: 100%;
				height: 100%;
				overflow: hidden; }

::-webkit-input-placeholder {
		color: #c6c6c6; }

:-ms-input-placeholder {
		color: #c6c6c6; }

::-moz-placeholder {
		color: #c6c6c6; }

::-placeholder {
		color: #c6c6c6; }

a:link, a:visited {
		color: #470F37;
		text-decoration: underline; }

a:hover, a:active {
		color: #470F37;
		text-decoration: none; }

a, a img {
		-webkit-transition: 0.2s ease all;
		-moz-transition: 0.2s ease all;
		-ms-transition: 0.2s ease all;
		transition: 0.2s ease all; }

a:hover {
		opacity: 0.65;
		-ms-filter: "alpha(opacity=65)";
		filter: alpha(opacity=65); }

@media screen and (min-width: 768px) {
		.sp-only {
				display: none !important; } }

@media screen and (max-width: 767px) {
		.pc-only {
				display: none !important; } }

img,
.bx-wrapper img {
		max-width: 100%;
		height: auto; }

.bx-wrapper img {
		display: inline !important; }

/* ----------------------------- 0. 共通パーツ */
.u-mt0 {
		margin-top: 0; }

.u-mt5 {
		margin-top: 5px; }

.u-mt10 {
		margin-top: 10px; }

.u-mt15 {
		margin-top: 15px; }

.u-mt20 {
		margin-top: 20px; }

.u-mt25 {
		margin-top: 25px; }

.u-mt30 {
		margin-top: 30px; }

.u-mt40 {
		margin-top: 40px; }

.u-mt50 {
		margin-top: 50px; }

.u-mt60 {
		margin-top: 60px; }

.u-mt70 {
		margin-top: 70px; }

.u-mt80 {
		margin-top: 80px; }

.u-mt90 {
		margin-top: 90px; }

.u-mb0 {
		margin-bottom: 0; }

.u-mb5 {
		margin-bottom: 5px; }

.u-mb10 {
		margin-bottom: 10px; }

.u-mb15 {
		margin-bottom: 15px; }

.u-mb20 {
		margin-bottom: 20px; }

.u-mb25 {
		margin-bottom: 25px; }

.u-mb30 {
		margin-bottom: 30px; }

.u-mb40 {
		margin-bottom: 40px; }

.u-mb50 {
		margin-bottom: 50px; }

.u-mb60 {
		margin-bottom: 60px; }

.u-mb70 {
		margin-bottom: 70px; }

.u-mb80 {
		margin-bottom: 80px; }

.u-mb90 {
		margin-bottom: 90px; }

.u-pt0 {
		padding-top: 0; }

.u-pt5 {
		padding-top: 5px; }

.u-pt10 {
		padding-top: 10px; }

.u-pt15 {
		padding-top: 15px; }

.u-pt20 {
		padding-top: 20px; }

.u-pt25 {
		padding-top: 25px; }

.u-pt30 {
		padding-top: 30px; }

.u-pt40 {
		padding-top: 40px; }

.u-pt50 {
		padding-top: 50px; }

.u-pt60 {
		padding-top: 60px; }

.u-pt70 {
		padding-top: 70px; }

.u-pt80 {
		padding-top: 80px; }

.u-pt90 {
		padding-top: 90px; }

.u-pb0 {
		padding-bottom: 0; }

.u-pb5 {
		padding-bottom: 5px; }

.u-pb10 {
		padding-bottom: 10px; }

.u-pb15 {
		padding-bottom: 15px; }

.u-pb20 {
		padding-bottom: 20px; }

.u-pb25 {
		padding-bottom: 25px; }

.u-pb30 {
		padding-bottom: 30px; }

.u-pb40 {
		padding-bottom: 40px; }

.u-pb50 {
		padding-bottom: 50px; }

.u-pb60 {
		padding-bottom: 60px; }

.u-pb70 {
		padding-bottom: 70px; }

.u-pb80 {
		padding-bottom: 80px; }

.u-pb90 {
		padding-bottom: 90px; }

.u-col {
		color: #470F37; }
		.u-col__red {
				color: #FF0000; }
		.u-col__blue {
				color: #3399FF; }

.u-mincho {
		font-family: "Sourse Han Serif", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "リュウミン R-KL", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif; }

.u-gothic {
		font-family: Helvetica, "游ゴシック体", YuGothic, "Noto Sans JP", Helvetica, "ヒラギノ角ゴPro W3", "Hiragino Kaku Gothic Pro", "小塚ゴシック Pro L", "Kozuka Gothic Pro Light", "メイリオ", Meiryo, "ＭＳ　Ｐゴシック", "MS PGothic", sans-serif; }

.u-freight {
		font-family: "freight-text-pro", "Sourse Han Serif", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "リュウミン R-KL", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif !important; }

.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; }

.c-wrap {
		max-width: 74.2857vw;
		margin-left: auto;
		margin-right: auto;
		padding-left: 118px;
		padding-right: 118px; }

.c-wrap__640 {
		max-width: 45.7142vw;
		margin-left: auto;
		margin-right: auto;
		padding-left: 118px;
		padding-right: 118px; }

.c-wrap__694 {
		max-width: 49.5714vw;
		margin-left: auto;
		margin-right: auto;
		padding-left: 118px;
		padding-right: 118px; }

.c-wrap__860 {
		max-width: 61.4285vw;
		margin-left: auto;
		margin-right: auto;
		padding-left: 118px;
		padding-right: 118px; }

.c-wrap__960 {
		max-width: 68.5714vw;
		margin-left: auto;
		margin-right: auto;
		padding-left: 118px;
		padding-right: 118px; }

.c-wrap__separate {
		margin-left: 118px;
		margin-right: 118px; }

.u-bg__gray {
		background: #f3f3f3; }

.c-separate1 {
		border-bottom: 1px solid #efefef;
		padding-bottom: 60px;
		margin-bottom: 60px; }

.c-btn1 a {
		display: block;
		text-align: center;
		font-weight: normal;
		color: #fff;
		background: #A1007D;
		text-decoration: none;
		max-width: 22.1428vw;
		padding-top: 1.8214vw;
		padding-bottom: 1.8214vw; }
		.c-btn1 a span {
				display: inline-block;
				*display: inline;
				*zoom: 1;
				position: relative;
				padding-right: 2.0714vw; }
				.c-btn1 a span:after {
						-webkit-transition: 0.3s ease all;
						-moz-transition: 0.3s ease all;
						-ms-transition: 0.3s ease all;
						transition: 0.3s ease all;
						display: block;
						content: "";
						position: absolute;
						right: 0;
						top: 50%;
						-webkit-transform: translateY(-50%);
						-moz-transform: translateY(-50%);
						transform: translateY(-50%);

						background-size: 8px 15px;
						width: 8px;
						height: 15px; }
		.c-btn1 a:hover {
				background: #8E0070;
				opacity: 1;
				-ms-filter: "alpha(opacity=100)";
				filter: alpha(opacity=100); }
				.c-btn1 a:hover span:after {
						right: -9px; }

.c-title1 {
		margin-bottom: 3.57vw; }
		.c-title1 .txt {
				font-size: 1.14286vw;
				margin-bottom: 1vw;
				font-weight: normal; }
				@media screen and (max-width: 767px) {
						.c-title1 .txt {
								font-size: 4.38356vw; } }
		.c-title1 .h {
				font-size: 6.85714vw;
				font-weight: normal;
				line-height: 88.54%; }
				@media screen and (max-width: 767px) {
						.c-title1 .h {
								font-size: 26.30137vw; } }
		.c-title1__white {
				color: #fff; }

.c-title2 {
		margin-bottom: 2.1428vw; }
		.c-title2 .txt {
				font-size: 1vw;
				color: #8C6F54;
				line-height: 160%;
				margin-bottom: 1.7857vw;
				font-weight: normal; }
				@media screen and (max-width: 767px) {
						.c-title2 .txt {
								font-size: 3.83562vw; } }
		.c-title2 .h {
				font-weight: 600;
				font-family: "Sourse Han Serif", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "リュウミン R-KL", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
				line-height: 150%;
				font-size: 1.71429vw; }
				@media screen and (max-width: 767px) {
						.c-title2 .h {
								font-size: 6.57534vw; } }

.c-title3 {
		margin-bottom: 2.1428vw; }
		.c-title3 .txt {
				font-size: 2.28571vw;
				margin-bottom: 2.1428vw;
				position: relative;
				display: inline-block;
				*display: inline;
				*zoom: 1;
				padding-right: 7.2857vw;
				font-weight: normal; }
				@media screen and (max-width: 767px) {
						.c-title3 .txt {
								font-size: 8.76712vw; } }
				.c-title3 .txt:after {
						display: block;
						content: "";
						position: absolute;
						right: 0;
						bottom: 0;
						width: 6vw;
						border-top: 1px solid #302D39; }
		.c-title3 .h {
				font-size: 1.71429vw;
				font-weight: 600;
				font-family: "Sourse Han Serif", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "リュウミン R-KL", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
				line-height: 150%; }
				@media screen and (max-width: 767px) {
						.c-title3 .h {
								font-size: 6.57534vw; } }

.c-title4 {
		margin-bottom: 5.3571vw; }
		.c-title4 .txt {
				font-size: 1.71429vw;
				color: #8C6F54;
				line-height: 150%;
				margin-bottom: 3.2142vw;
				font-weight: normal; }
				@media screen and (max-width: 767px) {
						.c-title4 .txt {
								font-size: 6.57534vw; } }
		.c-title4 .h {
				font-family: "Sourse Han Serif", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "リュウミン R-KL", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
				font-weight: 600;
				font-size: 2.14286vw;
				line-height: 150%; }
				@media screen and (max-width: 767px) {
						.c-title4 .h {
								font-size: 8.21918vw; } }

.c-link1 {
		margin-top: 3.2142vw; }
		.c-link1__svg {
				position: absolute;
				right: 0;
				width: 50px;
				height: 57px;
				border-radius: 100%;
				right: 0;
				top: 50%;
				margin-top: -28px; }
				.c-link1__svg path {
						fill: none;
						stroke: #A1007D;
						stroke-miterlimit: 10; }
				.c-link1__svg .animation {
						stroke-dasharray: 134 136;
						stroke-dashoffset: 135;
						-webkit-transition: 0.533s ease-in-out all;
						-moz-transition: 0.533s ease-in-out all;
						-ms-transition: 0.533s ease-in-out all;
						transition: 0.533s ease-in-out all; }
		.c-link1 a {
				display: inline-block;
				*display: inline;
				*zoom: 1;
				text-decoration: none;
				font-size: 1.14286vw;
				position: relative;
				color: #A1007D;
				padding-top: 19px;
				padding-bottom: 19px;
				padding-right: 55px;
				font-weight: normal; }
				@media screen and (max-width: 767px) {
						.c-link1 a {
								font-size: 4.38356vw; } }
				.c-link1 a:after {
						display: block;
						content: "";
						position: absolute;
						-webkit-transition: 0.3s ease all;
						-moz-transition: 0.3s ease all;
						-ms-transition: 0.3s ease all;
						transition: 0.3s ease all; }
				.c-link1 a:after {
						right: 25px;
						width: 7px;
						height: 13px;
						top: 50%;
						-webkit-transform: translateY(-50%);
						-moz-transform: translateY(-50%);
						transform: translateY(-50%);

						background-size: 7px 13px; }
				.c-link1 a:hover {
						opacity: 1;
						-ms-filter: "alpha(opacity=100)";
						filter: alpha(opacity=100); }
						.c-link1 a:hover .c-link1__svg .animation {
								stroke-dashoffset: 0; }

.c-txt1 .h {
		text-align: center;
		font-size: 1.71429vw;
		color: #8C6F54;
		line-height: 150%;
		margin-bottom: 40px;
		font-weight: normal; }
		@media screen and (max-width: 767px) {
				.c-txt1 .h {
						font-size: 6.57534vw; } }

.c-txt1 .txt {
		font-size: 2.14286vw;
		line-height: 163%;
		font-family: "Sourse Han Serif", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "リュウミン R-KL", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
		font-weight: 600;
		margin-bottom: 3.9285vw; }
		@media screen and (max-width: 767px) {
				.c-txt1 .txt {
						font-size: 8.21918vw; } }

.c-txt1 .en {
		font-size: 1vw;
		line-height: 200%;
		color: #818181;
		font-weight: normal; }
		@media screen and (max-width: 767px) {
				.c-txt1 .en {
						font-size: 3.83562vw; } }

.c-txt2 .h {
		font-size: 1.57143vw;
		line-height: 150%;
		font-family: "Sourse Han Serif", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "リュウミン R-KL", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
		font-weight: 600;
		margin-bottom: 1.42857vw; }
		@media screen and (max-width: 767px) {
				.c-txt2 .h {
						font-size: 6.0274vw; } }

.c-txt2 .txt {
		line-height: 193%;
		color: #818181; }

.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; }

.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: 40%;
		height: 0;
		overflow: hidden; }
		.u-googlemap-wrap iframe,
		.u-googlemap-wrap object,
		.u-googlemap-wrap embed {
				position: absolute;
				top: 0;
				left: 0;
				width: 100%;
				height: 100%; }

.u-youtube-wrap {
		position: relative;
		width: 100%;
		padding-top: 76.1904%; }
		.u-youtube-wrap iframe {
				position: absolute;
				top: 0;
				right: 0;
				width: 100% !important;
				height: 100% !important; }

.c-pagination {
		clear: both;
		position: relative;
		color: #302D39;
		text-align: center;
		padding-top: 5vw; }
		.c-pagination span,
		.c-pagination span:before {
				-webkit-transition: 0.3s ease all;
				-moz-transition: 0.3s ease all;
				-ms-transition: 0.3s ease all;
				transition: 0.3s ease all; }
		.c-pagination span,
		.c-pagination a {
				display: inline-block;
				*display: inline;
				*zoom: 1;
				vertical-align: middle;
				padding: 1.0571vw 1.2714vw;
				font-size: 1.28571vw;
				line-height: 150%;
				-webkit-box-sizing: border-box;
				-moz-box-sizing: border-box;
				box-sizing: border-box;
				position: relative; }
				@media screen and (max-width: 767px) {
						.c-pagination span,
						.c-pagination a {
								font-size: 4.93151vw; } }
		.c-pagination a {
				color: #302D39;
				text-decoration: none;
				position: relative; }
				.c-pagination a.next, .c-pagination a.prev {
						width: 50px;
						background-repeat: no-repeat;
						background-position: center;
						background-size: 8px 14px;
						text-indent: 60px;
						white-space: nowrap;
						overflow: hidden; }
				.c-pagination a.next {
						margin-left: 1.0714vw; }
				.c-pagination a.prev {
						margin-right: 1.0714vw; }
		.c-pagination span.current,
		.c-pagination a.page:hover {
				color: #A1007D;
				opacity: 1;
				-ms-filter: "alpha(opacity=100)";
				filter: alpha(opacity=100);
				cursor: pointer; }
				.c-pagination span.current:before,
				.c-pagination a.page:hover:before {
						display: block;
						opacity: 1;
						-ms-filter: "alpha(opacity=100)";
						filter: alpha(opacity=100);
						content: "";
						position: absolute;
						border-radius: 100%;
						background: #A1007D;
						width: 8px;
						height: 8px;
						left: 50%;
						margin-left: -4px;
						bottom: 4px; }

@media screen and (max-width: 640px) {
		.c-pagination {
				padding: 10px 0; }
				.c-pagination span,
				.c-pagination a {
						font-size: 1vw;
						margin: 3px 4px;
						padding: 3px 5px; } }
				@media screen and (max-width: 640px) and (max-width: 767px) {
						.c-pagination span,
						.c-pagination a {
								font-size: 3.83562vw; } }

.js-tab__content {
		display: none; }
		.js-tab__content.is-active {
				display: block; }

/* フェードインしながら少し上へ */
@-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-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;
				-o-animation-fill-mode: forwards;
				animation-fill-mode: forwards; }

/* ----------------------------- スマホ */
@media screen and (max-width: 767px) {
		.c-title1 {
				margin-bottom: 8vw; }
				.c-title1 .txt {
						margin-bottom: 3.5vw; }
				.c-title1 .h {
						font-size: 15.06849vw; }
		.c-title2 {
				margin-bottom: 5.8vw; }
				.c-title2 .txt {
						margin-bottom: 4.7857vw; }
		.c-title3 {
				margin-bottom: 5.14vw; }
				.c-title3 .txt {
						margin-bottom: 6.5vw;
						padding-right: 26vw; }
						.c-title3 .txt:after {
								width: 22vw; }
		.c-txt1 .h {
				font-size: 4.93151vw; }
		.c-txt1 .txt {
				font-size: 5.75342vw; }
		.c-txt2 .h {
				font-size: 5.47945vw; }
		.c-link1 {
				margin-top: 6vw; }
		.c-btn1 a {
				max-width: 84vw;
				padding-top: 4vw;
				padding-bottom: 4vw; }
				.c-btn1 a span {
						padding-right: 5vw; }
		.c-table1,
		.c-table1 thead,
		.c-table1 tbody,
		.c-table1 tr,
		.c-table1 td,
		.c-table1 th {
				display: block;
				width: 100%;
				-webkit-box-sizing: border-box;
				-moz-box-sizing: border-box;
				box-sizing: border-box; }
		.c-table1 tr {
				margin-bottom: 1px; }
		.c-table1 th,
		.c-table1 td {
				padding: 12px 20px;
				word-break: break-all; }
		.c-pagination span.current:before,
		.c-pagination a.page:hover:before {
				bottom: -8px;
				width: 6px;
				height: 6px;
				margin-left: -3px; }
		[class*="c-wrap"] {
				max-width: 84vw;
				padding-left: 8vw;
				padding-right: 8vw; }
				[class*="c-wrap"] [class*="c-wrap"] {
						padding-left: 0;
						padding-right: 0; }
		.js-table-xscroll__wrap {
				width: 100%;
				overflow-x: auto; }
		.js-table-xscroll__in {
				width: 1000px; } }

/* ----------------------------- 1. 各ページ共通 */
/*=======================================
ヘッダー
=========================================*/
.l-header {
		position: fixed;
		left: 0;
		top: 0;
		background: #EEE;
		z-index: 9999;
		width: 118px;
		height: 100vh;
		text-align: center;
		color: #470F37;
		z-index: 29; }
		.l-header__logo {
				position: absolute;
				left: 0;
				top: 0;
				width: 100%;
				z-index: 2; }
				.l-header__logo a {
						display: block;
						padding-top: 35px;
						padding-bottom: 35px; }
				.l-header__logo img {
						width: 67px; }
		.l-header__menu {
				position: absolute;
				width: 100%;
				height: 100%;
				left: 0;
				top: 0;
				-webkit-transition: 0.3s ease all;
				-moz-transition: 0.3s ease all;
				-ms-transition: 0.3s ease all;
				transition: 0.3s ease all;
				cursor: pointer; }
				.l-header__menu .btn {
						position: absolute;
						top: 50%;
						width: 100%;
						margin-top: -20px; }
				.l-header__menu span {
						display: inline-block;
						*display: inline;
						*zoom: 1;
						width: 14px;
						height: 2px;
						left: -2px;
						background: #000;
						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; }
						.l-header__menu span:before, .l-header__menu span:after {
								content: "";
								display: block;
								position: absolute;
								width: 18px;
								height: 2px;
								background: #470F37;
								-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; }
						.l-header__menu span:before {
								top: -6px; }
						.l-header__menu span:after {
								bottom: -6px; }
				.l-header__menu p {
						position: relative; }
						.l-header__menu p em {
								display: block;
								position: absolute;
								left: 0;
								width: 100%;
								text-align: center;
								font-weight: normal;
								font-style: normal; }
								.l-header__menu p em.is-open {
										display: none; }
				.l-header__menu:hover span {
						width: 18px;
						left: 0; }
				.l-header__menu.is-open span {
						background: transparent; }
						.l-header__menu.is-open span:before {
								-webkit-transform: rotate(45deg);
								-moz-transform: rotate(45deg);
								transform: rotate(45deg);
								transform-origin: center;
								top: 0; }
						.l-header__menu.is-open span:after {
								-webkit-transform: rotate(-45deg);
								-moz-transform: rotate(-45deg);
								transform: rotate(-45deg);
								transform-origin: center;
								bottom: 0; }
				.l-header__menu p {
						font-size: 12px;
						color: #470F37;
						padding-top: 5px;
						line-height: 120%; }
		.l-header__contact {
				position: absolute;
				left: 0;
				bottom: 0;
				width: 100%; }
				.l-header__contact a {
						display: block;
						width: 100%;
						-webkit-writing-mode: vertical-rl;
						-ms-writing-mode: tb-rl;
						writing-mode: vertical-rl;
						text-decoration: none;
						font-size: 12px;
						position: relative;
						padding-top: 48px;
						padding-bottom: 48px; }
						.l-header__contact a span {
								-webkit-transform: translateX(-53px);
								-moz-transform: translateX(-53px);
								transform: translateX(-53px);
								display: inline-block;
								*display: inline;
								*zoom: 1;
								padding-top: 5px;
								padding-bottom: 5px; }
								.l-header__contact a span:before, .l-header__contact a span:after {
										display: block;
										content: "";
										position: absolute;
										top: 0;
										left: -3px;
										border-left: 1px solid #470F37;
										height: 100%; }
								.l-header__contact a span:before {
										-webkit-transition: transform 0.3s ease 0.3s;
										-moz-transition: transform 0.3s ease 0.3s;
										-ms-transition: transform 0.3s ease 0.3s;
										transition: transform 0.3s ease 0.3s;
										-webkit-transform: scaleY(1);
										-moz-transform: scaleY(1);
										transform: scaleY(1);
										transform-origin: 100% 100%; }
								.l-header__contact a span:after {
										-webkit-transition: transform 0.3s ease;
										-moz-transition: transform 0.3s ease;
										-ms-transition: transform 0.3s ease;
										transition: transform 0.3s ease;
										-webkit-transform: scaleY(0);
										-moz-transform: scaleY(0);
										transform: scaleY(0);
										transform-origin: 0 0; }
						.l-header__contact a:hover {
								opacity: 1;
								-ms-filter: "alpha(opacity=100)";
								filter: alpha(opacity=100); }
								.l-header__contact a:hover span:before {
										-webkit-transition: transform 0.3s ease;
										-moz-transition: transform 0.3s ease;
										-ms-transition: transform 0.3s ease;
										transition: transform 0.3s ease;
										-webkit-transform: scaleY(0);
										-moz-transform: scaleY(0);
										transform: scaleY(0); }
								.l-header__contact a:hover span:after {
										-webkit-transition: transform 0.3s ease 0.3s;
										-moz-transition: transform 0.3s ease 0.3s;
										-ms-transition: transform 0.3s ease 0.3s;
										transition: transform 0.3s ease 0.3s;
										-webkit-transform: scaleY(1);
										-moz-transform: scaleY(1);
										transform: scaleY(1); }

.l-nav {
		position: fixed;
		top: 0;
		left: -100vw;
		overflow: hidden;
		background: #191A1E;
		color: #fff;
		z-index: 24;
		width: calc(100% - 118px);
		height: 100%;
		-webkit-transition: 0.3s ease all;
		-moz-transition: 0.3s ease all;
		-ms-transition: 0.3s ease all;
		transition: 0.3s ease all;
		opacity: 0;
		-ms-filter: "alpha(opacity=0)";
		filter: alpha(opacity=0);
		-webkit-transform: scaleX(0);
		-moz-transform: scaleX(0);
		transform: scaleX(0);
		transform-origin: left center; }
		.l-nav a {
				color: #fff; }
		.l-nav.is-open {
				left: 118px;
				opacity: 1;
				-ms-filter: "alpha(opacity=100)";
				filter: alpha(opacity=100);
				-webkit-transform: scaleX(1);
				-moz-transform: scaleX(1);
				transform: scaleX(1); }
		.l-nav__wrap {
				padding: 4vw 5.7142vw 0;
				-webkit-box-sizing: border-box;
				-moz-box-sizing: border-box;
				box-sizing: border-box;
				height: 100%; }
				.l-nav__wrap:before {
						display: block;
						content: "";
						position: fixed;

						background-repeat: repeat;
						background-size: 100px 100px;
						height: 300%;
						width: 300%;
						left: -50%;
						top: -100%;
						opacity: 0.7;
						-ms-filter: "alpha(opacity=70)";
						filter: alpha(opacity=70);
						-webkit-animation: noiseanim 8s steps(10) infinite;
						-moz-animation: noiseanim 8s steps(10) infinite;
						-ms-animation: noiseanim 8s steps(10) infinite;
						-o-animation: noiseanim 8s steps(10) infinite;
						animation: noiseanim 8s steps(10) infinite; }

@-webkit-keyframes noiseanim {
		0% {
				-webkit-transform: translate(0);
				transform: translate(0); }
		10% {
				-webkit-transform: translate(-5%, -10%);
				transform: translate(-5%, -10%); }
		20% {
				-webkit-transform: translate(-15%, 5%);
				transform: translate(-15%, 5%); }
		30% {
				-webkit-transform: translate(7%, -25%);
				transform: translate(7%, -25%); }
		40% {
				-webkit-transform: translate(-5%, 25%);
				transform: translate(-5%, 25%); }
		50% {
				-webkit-transform: translate(-15%, 10%);
				transform: translate(-15%, 10%); }
		60% {
				-webkit-transform: translate(15%);
				transform: translate(15%); }
		70% {
				-webkit-transform: translateY(15%);
				transform: translateY(15%); }
		80% {
				-webkit-transform: translate(3%, 35%);
				transform: translate(3%, 35%); }
		90% {
				-webkit-transform: translate(-10%, 10%);
				transform: translate(-10%, 10%); } }

@keyframes noiseanim {
		0% {
				-webkit-transform: translate(0);
				transform: translate(0); }
		10% {
				-webkit-transform: translate(-5%, -10%);
				transform: translate(-5%, -10%); }
		20% {
				-webkit-transform: translate(-15%, 5%);
				transform: translate(-15%, 5%); }
		30% {
				-webkit-transform: translate(7%, -25%);
				transform: translate(7%, -25%); }
		40% {
				-webkit-transform: translate(-5%, 25%);
				transform: translate(-5%, 25%); }
		50% {
				-webkit-transform: translate(-15%, 10%);
				transform: translate(-15%, 10%); }
		60% {
				-webkit-transform: translate(15%);
				transform: translate(15%); }
		70% {
				-webkit-transform: translateY(15%);
				transform: translateY(15%); }
		80% {
				-webkit-transform: translate(3%, 35%);
				transform: translate(3%, 35%); }
		90% {
				-webkit-transform: translate(-10%, 10%);
				transform: translate(-10%, 10%); } }
		.l-nav__close {
				position: absolute;
				top: 4.2857vw;
				right: 6vw;
				font-size: 0.85714vw;
				background-size: 43px 41px;
				padding-top: 56px;
				text-align: center;
				cursor: pointer;
				width: 43px;
				z-index: 4;
				cursor: pointer; }
				@media screen and (max-width: 767px) {
						.l-nav__close {
								font-size: 3.28767vw; } }
		.l-nav__menu {
				text-align: center;
				position: relative;
				z-index: 3;
				height: 83.2vh; }
				.l-nav__menu ul {
						position: absolute;
						top: 50%;
						width: 100%;
						-webkit-transform: translateY(-50%);
						-moz-transform: translateY(-50%);
						transform: translateY(-50%); }
				.l-nav__menu li {
						font-family: "freight-text-pro", "Sourse Han Serif", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "リュウミン R-KL", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif !important;
						font-weight: normal;
						line-height: 160%;
						margin-bottom: 1.6285vw;
						font-size: 2.14286vw;
						letter-spacing: 0.08em; }
						@media screen and (max-width: 767px) {
								.l-nav__menu li {
										font-size: 8.21918vw; } }
				.l-nav__menu a {
						text-decoration: none;
						position: relative;
						display: inline-block;
						*display: inline;
						*zoom: 1; }
						.l-nav__menu a:hover {
								opacity: 1;
								-ms-filter: "alpha(opacity=100)";
								filter: alpha(opacity=100);
								color: #A1007D; }
		.l-nav__sns {
				position: absolute;
				z-index: 4;
				top: 50%;
				right: 7.1428vw;
				-webkit-transform: translateY(-50%);
				-moz-transform: translateY(-50%);
				transform: translateY(-50%); }
				.l-nav__sns li {
						text-align: center;
						margin-bottom: 3.2142vw; }
						.l-nav__sns li img {
								opacity: 0.5;
								-ms-filter: "alpha(opacity=50)";
								filter: alpha(opacity=50); }
						.l-nav__sns li:last-child {
								margin-bottom: 0; }
						.l-nav__sns li.facebook img {
								width: 11px; }
						.l-nav__sns li.instagram img {
								width: 21px; }
						.l-nav__sns li a:hover {
								opacity: 1;
								-ms-filter: "alpha(opacity=100)";
								filter: alpha(opacity=100); }
								.l-nav__sns li a:hover img {
										opacity: 1;
										-ms-filter: "alpha(opacity=100)";
										filter: alpha(opacity=100); }
		.l-nav__block1 {
				border-top: 1px solid #9B9BA1;
				padding-top: 3.75vh;
				padding-bottom: 3.75vh;
				font-size: 1vw;
				position: relative;
				z-index: 2; }
				@media screen and (max-width: 767px) {
						.l-nav__block1 {
								font-size: 3.83562vw; } }
				.l-nav__block1 .info {
						float: left; }
						.l-nav__block1 .info p {
								display: inline-block;
								*display: inline;
								*zoom: 1;
								color: #818181;
								vertical-align: middle;
								margin-right: 3vw; }
				.l-nav__block1 .nav {
						float: right;
						text-align: right; }
						.l-nav__block1 .nav li {
								display: inline-block;
								*display: inline;
								*zoom: 1;
								vertical-align: middle;
								margin-left: 3.2142vw; }
								.l-nav__block1 .nav li a {
										color: #818181;
										text-decoration: none; }
										.l-nav__block1 .nav li a:hover {
												opacity: 1;
												-ms-filter: "alpha(opacity=100)";
												filter: alpha(opacity=100);
												color: #fff; }
		.l-nav .hover-reveal {
				position: fixed;
				width: 200px;
				height: 150px;
				top: 0;
				left: 0;
				pointer-events: none;
				opacity: 0; }
				.l-nav .hover-reveal__inner, .l-nav .hover-reveal__img {
						width: 100%;
						height: 100%;
						position: relative; }
				.l-nav .hover-reveal__deco {
						width: 100%;
						height: 100%;
						position: absolute;
						top: 0;
						left: 0;
						background-color: #181314; }
				.l-nav .hover-reveal__img {
						background-size: cover;
						background-position: 50% 50%; }

/*=======================================
ページタイトル
=========================================*/
.l-pagetitle {
		margin-bottom: 8.3333vw; }
		.l-pagetitle .img {
				background-position: center;
				background-size: cover;
				background-repeat: no-repeat;
				width: 54.85714vw;
				height: 100vh; }
		.l-pagetitle .box1 {
				background: #E4E1DE;
				height: 82vh;
				position: absolute;
				z-index: 1;
				width: 45.8571vw;
				right: 1px;
				top: 9vh;
				-webkit-box-sizing: border-box;
				-moz-box-sizing: border-box;
				box-sizing: border-box;
				padding: 6.8749vh 10.7857vw;
				display: table; }
				.l-pagetitle .box1-wrap {
						display: table-cell;
						vertical-align: middle; }
				.l-pagetitle .box1 .back {
						margin-bottom: 13.5vh;
						font-weight: normal; }
						.l-pagetitle .box1 .back a {
								color: #8C6F54;
								font-size: 1vw;
								display: inline-block;
								*display: inline;
								*zoom: 1;
								background-size: 5px 10px;
								padding-left: 17px;
								text-decoration: none; }
								@media screen and (max-width: 767px) {
										.l-pagetitle .box1 .back a {
												font-size: 3.83562vw; } }
				.l-pagetitle .box1 h2 {
						font-size: 3.28571vw;
						line-height: 150%;
						font-weight: 400;
						margin-bottom: 5.3749vh;
						font-family: "freight-text-pro", "Sourse Han Serif", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "リュウミン R-KL", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif !important; }
						@media screen and (max-width: 767px) {
								.l-pagetitle .box1 h2 {
										font-size: 12.60274vw; } }
				.l-pagetitle .box1 h3 {
						font-size: 1.42857vw;
						font-family: "Sourse Han Serif", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "リュウミン R-KL", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
						font-weight: 600;
						line-height: 150%;
						margin-bottom: 13.125vh; }
						@media screen and (max-width: 767px) {
								.l-pagetitle .box1 h3 {
										font-size: 5.47945vw; } }
				.l-pagetitle .box1 .scroll a {
						display: inline-block;
						*display: inline;
						*zoom: 1;
						padding: 20px 0 20px 15px;
						color: #A1007D;
						text-decoration: none;
						font-size: 0.85714vw; }
						@media screen and (max-width: 767px) {
								.l-pagetitle .box1 .scroll a {
										font-size: 3.28767vw; } }
		.l-pagetitle.is-about .img {
				background-image: url(img/about/pagetitle_img1.jpg); }
		.l-pagetitle.is-menu .img {
				background-image: url(img/menu/pagetitle_img1.jpg); }

.l-pagetitle2 {
		margin-bottom: 8.3333vw; }
		.l-pagetitle2__img {
				position: fixed;
				top: 0;
				left: 118px;
				width: 21.4285vw;
				height: 100vh;
				background-repeat: no-repeat;
				background-position: center;
				background-size: cover; }
				.l-pagetitle2__img.is-news {
						background-image: url(img/news/pagetitle_img1.jpg); }
				.l-pagetitle2__img.is-contact {
						background-image: url(img/contact/pagetitle_img1.jpg); }
				.l-pagetitle2__img.is-recruit {
						background-image: url(img/recruit/pagetitle_img1.jpg); }
				.l-pagetitle2__img.is-privacy {
						background-image: url(img/privacy/pagetitle_img1.jpg); }
		.l-pagetitle2 .box1 {
				background: #E4E1DE;
				z-index: 1;
				-webkit-box-sizing: border-box;
				-moz-box-sizing: border-box;
				box-sizing: border-box;
				padding: 9.74995vh 7.9285vw 20.3749vh;
				width: calc(100% - 21.4285vw);
				margin-left: auto; }
				.l-pagetitle2 .box1 .back {
						margin-bottom: 20.125vh;
						font-weight: normal; }
						.l-pagetitle2 .box1 .back a {
								color: #8C6F54;
								font-size: 1vw;
								display: inline-block;
								*display: inline;
								*zoom: 1;
								background-size: 5px 10px;
								padding-left: 17px;
								text-decoration: none; }
								@media screen and (max-width: 767px) {
										.l-pagetitle2 .box1 .back a {
												font-size: 3.83562vw; } }
				.l-pagetitle2 .box1 h2 {
						font-size: 3.28571vw;
						line-height: 150%;
						font-weight: 400;
						font-family: "freight-text-pro", "Sourse Han Serif", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "リュウミン R-KL", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif !important;
						margin-bottom: 5.37495vh; }
						@media screen and (max-width: 767px) {
								.l-pagetitle2 .box1 h2 {
										font-size: 12.60274vw; } }
				.l-pagetitle2 .box1 h3 {
						font-size: 1.42857vw;
						font-family: "Sourse Han Serif", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "リュウミン R-KL", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
						font-weight: 600;
						line-height: 150%; }
						@media screen and (max-width: 767px) {
								.l-pagetitle2 .box1 h3 {
										font-size: 5.47945vw; } }
				.l-pagetitle2 .box1 .scroll a {
						display: inline-block;
						*display: inline;
						*zoom: 1;
						padding: 20px 0 20px 15px;
						color: #A1007D;
						text-decoration: none;
						font-size: 0.85714vw; }
						@media screen and (max-width: 767px) {
								.l-pagetitle2 .box1 .scroll a {
										font-size: 3.28767vw; } }

/*=======================================
ローディング
=========================================*/
.l-loading {
		background: #fff;
		position: fixed;
		z-index: 99999;
		left: 0;
		top: 0;
		width: 100%;
		height: 100%; }
		.l-loading-bg {
				display: block;
				position: absolute;
				left: 0;
				top: 0;
				background: #222;
				width: 100%;
				height: 100%;
				z-index: 1;
				-webkit-transform: scaleX(0);
				-moz-transform: scaleX(0);
				transform: scaleX(0);
				transform-origin: left center;
				-webkit-transition: 1s cubic-bezier(0.86, 0, 0.07, 1) all;
				-moz-transition: 1s cubic-bezier(0.86, 0, 0.07, 1) all;
				-ms-transition: 1s cubic-bezier(0.86, 0, 0.07, 1) all;
				transition: 1s cubic-bezier(0.86, 0, 0.07, 1) all; }
		.l-loading h1 {
				position: absolute;
				z-index: 3;
				top: 0;
				right: 0;
				bottom: 0;
				left: 0;
				margin: auto;
				width: 180px;
				height: 155px;
				opacity: 0;
				-ms-filter: "alpha(opacity=0)";
				filter: alpha(opacity=0);
				-webkit-transform: translateY(5px);
				-moz-transform: translateY(5px);
				transform: translateY(5px);
				-webkit-transition: 1s ease all;
				-moz-transition: 1s ease all;
				-ms-transition: 1s ease all;
				transition: 1s ease all; }
				.l-loading h1.is-load {
						-webkit-transform: translateY(0);
						-moz-transform: translateY(0);
						transform: translateY(0);
						opacity: 1;
						-ms-filter: "alpha(opacity=100)";
						filter: alpha(opacity=100); }
				.l-loading h1.is-close {
						opacity: 0;
						-ms-filter: "alpha(opacity=0)";
						filter: alpha(opacity=0); }
		.l-loading.is-load .l-loading-bg {
				-webkit-transform: scaleX(1);
				-moz-transform: scaleX(1);
				transform: scaleX(1); }
		.l-loading.is-finish .l-loading-bg {
				transform-origin: right center; }
		.l-loading.is-close {
				background: transparent; }
				.l-loading.is-close .l-loading-bg {
						-webkit-transition: 1s ease all;
						-moz-transition: 1s ease all;
						-ms-transition: 1s ease all;
						transition: 1s ease all;
						opacity: 0;
						-ms-filter: "alpha(opacity=0)";
						filter: alpha(opacity=0); }

/*=======================================
コンテンツ
=========================================*/
#container:before {
		display: block;
		content: "";
		position: fixed;

		background-repeat: repeat;
		background-size: 100px 100px;
		height: 300%;
		width: 300%;
		left: -50%;
		top: -100%;
		opacity: 0.7;
		-ms-filter: "alpha(opacity=70)";
		filter: alpha(opacity=70);
		-webkit-animation: noiseanim 8s steps(10) infinite;
		-moz-animation: noiseanim 8s steps(10) infinite;
		-ms-animation: noiseanim 8s steps(10) infinite;
		-o-animation: noiseanim 8s steps(10) infinite;
		animation: noiseanim 8s steps(10) infinite; }

@-webkit-keyframes noiseanim {
		0% {
				-webkit-transform: translate(0);
				transform: translate(0); }
		10% {
				-webkit-transform: translate(-5%, -10%);
				transform: translate(-5%, -10%); }
		20% {
				-webkit-transform: translate(-15%, 5%);
				transform: translate(-15%, 5%); }
		30% {
				-webkit-transform: translate(7%, -25%);
				transform: translate(7%, -25%); }
		40% {
				-webkit-transform: translate(-5%, 25%);
				transform: translate(-5%, 25%); }
		50% {
				-webkit-transform: translate(-15%, 10%);
				transform: translate(-15%, 10%); }
		60% {
				-webkit-transform: translate(15%);
				transform: translate(15%); }
		70% {
				-webkit-transform: translateY(15%);
				transform: translateY(15%); }
		80% {
				-webkit-transform: translate(3%, 35%);
				transform: translate(3%, 35%); }
		90% {
				-webkit-transform: translate(-10%, 10%);
				transform: translate(-10%, 10%); } }

@keyframes noiseanim {
		0% {
				-webkit-transform: translate(0);
				transform: translate(0); }
		10% {
				-webkit-transform: translate(-5%, -10%);
				transform: translate(-5%, -10%); }
		20% {
				-webkit-transform: translate(-15%, 5%);
				transform: translate(-15%, 5%); }
		30% {
				-webkit-transform: translate(7%, -25%);
				transform: translate(7%, -25%); }
		40% {
				-webkit-transform: translate(-5%, 25%);
				transform: translate(-5%, 25%); }
		50% {
				-webkit-transform: translate(-15%, 10%);
				transform: translate(-15%, 10%); }
		60% {
				-webkit-transform: translate(15%);
				transform: translate(15%); }
		70% {
				-webkit-transform: translateY(15%);
				transform: translateY(15%); }
		80% {
				-webkit-transform: translate(3%, 35%);
				transform: translate(3%, 35%); }
		90% {
				-webkit-transform: translate(-10%, 10%);
				transform: translate(-10%, 10%); } }

.l-contents {
		position: relative;
		z-index: 1; }

/* ----------------------------- タブレット */
/* ----------------------------- スマホ */
@media screen and (max-width: 767px) {
		.l-header {
				position: fixed;
				width: 100%;
				height: auto;
				padding: 12px;
				-webkit-box-sizing: border-box;
				-moz-box-sizing: border-box;
				box-sizing: border-box; }
				.l-header__logo {
						position: static;
						float: left;
						width: auto; }
						.l-header__logo a {
								padding-top: 0;
								padding-bottom: 0; }
						.l-header__logo img {
								width: 80px; }
				.l-header__menu {
						right: 0;
						left: auto;
						width: 50px;
						height: 100%;
						text-align: center;
						z-index: 9; }
						.l-header__menu .btn {
								position: absolute;
								width: 20px;
								height: 2px;
								margin-top: 0;
								top: 0;
								right: 0;
								bottom: 0;
								left: 0;
								margin: auto; }
						.l-header__menu span {
								vertical-align: top; }
						.l-header__menu p em {
								display: none !important; }
				.l-header__contact {
						float: right;
						position: relative;
						width: auto;
						padding-right: 45px;
						z-index: 1;
						bottom: -4px; }
						.l-header__contact a {
								-webkit-writing-mode: horizontal-tb;
								-ms-writing-mode: lr-tb;
								writing-mode: horizontal-tb;
								padding-top: 0;
								padding-bottom: 0;
								font-size: 11px; }
								.l-header__contact a span {
										-webkit-transform: translateX(0);
										-moz-transform: translateX(0);
										transform: translateX(0);
										padding-top: 0;
										padding-bottom: 0; }
										.l-header__contact a span:before, .l-header__contact a span:after {
												width: calc(100% + 6px);
												height: auto;
												top: auto;
												bottom: 0;
												border-left: 0;
												border-bottom: 1px solid #470F37; }
		.l-nav {
				top: -100%;
				left: 0;
				z-index: 34;
				width: 100%;
				height: 100%;
				-webkit-transform: scale(1, 0);
				-moz-transform: scale(1, 0);
				transform: scale(1, 0);
				transform-origin: center top; }
				.l-nav.is-open {
						top: 0;
						left: 0;
						width: 100%;
						-webkit-transform: scale(1, 1);
						-moz-transform: scale(1, 1);
						transform: scale(1, 1); }
				.l-nav__wrap {
						padding: 23.16vw 9vw 60px;
						max-height: 100vh;
						overflow: auto;
						-webkit-box-sizing: border-box;
						-moz-box-sizing: border-box;
						box-sizing: border-box;
						display: -webkit-flex;
						display: -moz-flex;
						display: flex;
						flex-direction: column;
						justify-content: center; }
				.l-nav__close {
						float: right;
						background-size: 20px auto;
						padding-top: 30px;
						width: 20px; }
						.l-nav__close p {
								display: none; }
				.l-nav__logo {
						float: left;
						position: absolute;
						top: 5.16vw;
						left: 9vw; }
						.l-nav__logo img {
								width: 67px; }
				.l-nav__menu {
						height: auto;
						clear: both;
						padding-top: 8.16vw; }
						.l-nav__menu ul {
								position: static;
								top: 0;
								-webkit-transform: translateY(0);
								-moz-transform: translateY(0);
								transform: translateY(0);
								text-align: left; }
				.l-nav__sns {
						z-index: 9; }
						.l-nav__sns li {
								margin-bottom: 9.2142vw; }
				.l-nav__block1 {
						border-top: 0;
						padding-top: 4.75vh; }
						.l-nav__block1 .info {
								margin-bottom: 0; }
								.l-nav__block1 .info p {
										margin-bottom: 3vw; }
						.l-nav__block1 .nav {
								float: none;
								text-align: left; }
								.l-nav__block1 .nav li {
										margin-left: 0;
										margin-right: 3vw; }
						.l-nav__block1 a {
								color: #818181; }
				.l-nav__contact {
						position: absolute;
						margin-right: -9vw;
						margin-left: -9vw;
						bottom: 0;
						width: 100%;
						z-index: 9; }
						.l-nav__contact a {
								display: block;
								color: #fff;
								background: #A1007D;
								text-align: center;
								font-size: 3.83562vw; }
						.l-nav__contact span {
								display: inline-block;
								*display: inline;
								*zoom: 1;
								background-size: 18px;
								padding-left: 24px;
								padding-top: 18px;
								padding-bottom: 18px; }
		.l-pagetitle .img {
				height: auto;
				width: auto;
				padding-top: 104.13vw; }
		.l-pagetitle .box1 {
				position: static;
				height: auto;
				width: 100%;
				padding-top: 12vw;
				padding-bottom: 12vw; }
				.l-pagetitle .box1 .back {
						margin-bottom: 9.333vw; }
				.l-pagetitle .box1 h2 {
						margin-bottom: 4vw; }
				.l-pagetitle .box1 h3 {
						margin-bottom: 14.666vw; }
		.l-pagetitle .scroll {
				display: none; }
		.l-pagetitle2 {
				margin-bottom: 14vw; }
				.l-pagetitle2 .box1 {
						width: 100%;
						padding-top: 12vw;
						padding-bottom: 12vw; }
						.l-pagetitle2 .box1 .back {
								margin-bottom: 9.333vw; }
						.l-pagetitle2 .box1 h2 {
								font-size: 2.5vw;
								margin-bottom: 4vw; } }
						@media screen and (max-width: 767px) and (max-width: 767px) {
								.l-pagetitle2 .box1 h2 {
										font-size: 9.58904vw; } }

@media screen and (max-width: 767px) {
						.l-pagetitle2 .box1 h3 {
								font-size: 1.28571vw; } }
						@media screen and (max-width: 767px) and (max-width: 767px) {
								.l-pagetitle2 .box1 h3 {
										font-size: 4.93151vw; } }

@media screen and (max-width: 767px) {
		.l-loading h1 {
				width: 33.125vw;
				height: 28.4375vw; }
		.l-contents {
				padding-left: 0; } }

/*=======================================
フッター
=========================================*/
.l-footer {
		margin-top: 12vw;
		position: relative;
		z-index: 19;
		background: #eee; }
		body.is-menu .l-footer {
				margin-top: 0; }
		.l-footer__block1 {
				background: url(img/common/footer_bg1.jpg) no-repeat center;
				background-size: cover;
				padding-top: 9.2142vw;
				padding-bottom: 9.2142vw;
				color: #fff; }
				.l-footer__block1 .h,
				.l-footer__block1 .txt1 {
						display: inline-block;
						*display: inline;
						*zoom: 1;
						vertical-align: middle; }
				.l-footer__block1 .h {
						font-size: 1.42857vw;
						font-family: "Sourse Han Serif", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "リュウミン R-KL", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
						line-height: 180%;
						padding-right: 3.5714vw;
						font-weight: 400;
						letter-spacing: 0.08em; }
						@media screen and (max-width: 767px) {
								.l-footer__block1 .h {
										font-size: 5.47945vw; } }
				.l-footer__block1 .txt1 {
						border-left: 1px solid #9B9BA1;
						padding-left: 4.2857vw; }
						.l-footer__block1 .txt1 h5 {
								font-weight: normal;
								font-size: 1.14286vw;
								line-height: 140%;
								margin-bottom: 8px;
								color: #818181; }
								@media screen and (max-width: 767px) {
										.l-footer__block1 .txt1 h5 {
												font-size: 4.38356vw; } }
						.l-footer__block1 .txt1 p {
								font-size: 1.14286vw; }
								@media screen and (max-width: 767px) {
										.l-footer__block1 .txt1 p {
												font-size: 4.38356vw; } }
								.l-footer__block1 .txt1 p a {
										color: #fff; }
				.l-footer__block1 .c-btn1 {
						float: right;
						width: 22.1428vw; }
		.l-footer__block2 {
				padding-top: 6vw;
				padding-bottom: 5.3571vw; }
				.l-footer__block2 .logo {
						float: left;
						margin-right: 4.5714vw; }
						.l-footer__block2 .logo img {
								width: 6.6428vw; }
				.l-footer__block2 .info {
						float: left;
						width: 40vw;
						padding-top: 0.5714vw; }
						.l-footer__block2 .info table {
								width: 100%; }
						.l-footer__block2 .info th,
						.l-footer__block2 .info td {
								font-size: 1vw;
								line-height: 170%;
								padding-top: 9px;
								padding-bottom: 9px; }
								@media screen and (max-width: 767px) {
										.l-footer__block2 .info th,
										.l-footer__block2 .info td {
												font-size: 3.83562vw; } }
						.l-footer__block2 .info th {
								text-align: left;
								color: #818181;
								vertical-align: top;
								width: 8vw;
								font-weight: 400; }
				.l-footer__block2 .contact {
						float: right;
						text-align: right;
						width: 17.1428vw;
						padding-top: 0.5714vw; }
						.l-footer__block2 .contact .c-link1 {
								margin-top: 0; }
						.l-footer__block2 .contact .sns {
								margin-top: 5.9285vw; }
								.l-footer__block2 .contact .sns li {
										display: inline-block;
										*display: inline;
										*zoom: 1;
										vertical-align: middle;
										margin-left: 3vw; }
										.l-footer__block2 .contact .sns li:first-child {
												margin-left: 0; }
										.l-footer__block2 .contact .sns li.facebook img {
												width: 0.7142vw; }
										.l-footer__block2 .contact .sns li.instagram img {
												width: 1.3571vw; }
		.l-footer__block3 {
				padding-bottom: 3.1428vw;
				font-weight: normal; }
				.l-footer__block3 .nav {
						float: left; }
						.l-footer__block3 .nav li {
								font-size: 0.85714vw;
								display: inline-block;
								*display: inline;
								*zoom: 1;
								vertical-align: middle;
								margin-right: 1.5571vw; }
								@media screen and (max-width: 767px) {
										.l-footer__block3 .nav li {
												font-size: 3.28767vw; } }
								.l-footer__block3 .nav li a {
										text-decoration: none;
										color: #818181; }
				.l-footer__block3 .copyright {
						float: right;
						color: #302D39; }
						.l-footer__block3 .copyright p {
								font-size: 0.71429vw; }
								@media screen and (max-width: 767px) {
										.l-footer__block3 .copyright p {
												font-size: 2.73973vw; } }

/*=======================================
ページトップへ
=========================================*/
.l-pagetop {
		position: fixed;
		right: 30px;
		bottom: 30px;
		width: 87px;
		height: 87px; }

/* ----------------------------- タブレット */
/* ----------------------------- スマホ */
@media screen and (max-width: 767px) {
		.l-footer__block1 {
				position: relative;
				margin-bottom: -1px;
				z-index: 1; }
				.l-footer__block1 .h,
				.l-footer__block1 .txt1,
				.l-footer__block1 .c-btn1 {
						display: block;
						margin-bottom: 2vw;
						float: none;
						width: auto; }
				.l-footer__block1 .txt1 {
						padding: 5.6vw 0 6vw;
						border-left: 0;
						background-size: 32vw auto; }
						.l-footer__block1 .txt1 h5 {
								margin-bottom: 4px; }
						.l-footer__block1 .txt1 a {
								text-decoration: none; }
		.l-footer__block3 {
				border-top: 1px solid #CDCDCD; }
				.l-footer__block3 .nav {
						padding-top: 3vw;
						padding-bottom: 3vw;
						float: none; }
						.l-footer__block3 .nav li {
								float: left;
								width: 50%;
								margin-right: 0;
								margin-bottom: 3vw;
								margin-top: 3vw; }
								.l-footer__block3 .nav li:nth-child(2n+1) {
										clear: both; }
				.l-footer__block3 .sns {
						text-align: center;
						border-top: 1px solid #CDCDCD;
						padding-top: 8vw;
						position: relative;
						margin-left: -8vw;
						margin-right: -8vw;
						margin-bottom: 6vw; }
						.l-footer__block3 .sns li {
								display: inline-block;
								*display: inline;
								*zoom: 1;
								margin: 0 6vw; }
								.l-footer__block3 .sns li.facebook img {
										width: 10px; }
								.l-footer__block3 .sns li.instagram img {
										width: 19px; }
				.l-footer__block3 .copyright {
						float: none;
						text-align: center; } }

/* ----------------------------- 2. トップページ */
/*=======================================
トップページ
=========================================*/
.p-top {
		position: relative;
		width: 100%;
		height: 100%;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
		z-index: 9; }
		.p-top-whole {
				width: 100%;
				height: 100vh;
				min-height: 500px;
				overflow: hidden; }
		.p-top-wrap {
				position: relative;
				white-space: nowrap; }
		.p-top-content {
				display: inline-block;
				*display: inline;
				*zoom: 1;
				vertical-align: middle; }
				.p-top-contentwrap {
						display: inline-block;
						*display: inline;
						*zoom: 1;
						white-space: nowrap; }
		.p-top__scroll li {
				width: 54px;
				height: 54px;
				border-radius: 100%;
				background-position: center;
				background-repeat: no-repeat;
				background-size: cover;
				position: fixed;
				bottom: 4.5vh;
				cursor: pointer;
				z-index: 2999;
				mix-blend-mode: difference; }
				.p-top__scroll li.prev {
						left: calc(4.5vh + 118px); }
				.p-top__scroll li.next {
						right: 4.5vh; }
		.p-top__progress {
				position: fixed;
				width: 100%;
				height: 5px;
				left: 0;
				bottom: 0;
				z-index: 999;
				padding-left: 118px;
				-webkit-box-sizing: border-box;
				-moz-box-sizing: border-box;
				box-sizing: border-box; }
				.p-top__progress .bar {
						-webkit-transition: 0.3s ease all;
						-moz-transition: 0.3s ease all;
						-ms-transition: 0.3s ease all;
						transition: 0.3s ease all;
						width: 0;
						height: 100%;
						background: #a1007d;
						background: -moz-linear-gradient(left, #a1007d 0%, #752f88 100%);
						background: -webkit-linear-gradient(left, #a1007d 0%, #752f88 100%);
						background: linear-gradient(to right, #a1007d 0%, #752f88 100%);
						filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#a1007d', endColorstr='#752f88',GradientType=1 ); }
		.p-top__kv {

				vertical-align: top; }
				.p-top__kv .slider {
						width: 43.0714vw;
						float: left;
						height: 100vh;
						position: relative; }
						.p-top__kv .slider ul,
						.p-top__kv .slider li {
								height: 100%; }
						.p-top__kv .slider li {
								background-position: center;
								background-size: cover;
								background-repeat: no-repeat; }
								.p-top__kv .slider li.li1 {
										background-image: url(img/top/kv_img1.jpg); }
								.p-top__kv .slider li.li2 {
										background-image: url(img/top/kv_img2.jpg); }
								.p-top__kv .slider li.li3 {
										background-image: url(img/top/kv_img3.jpg); }
								.p-top__kv .slider li.li4 {
										background-image: url(img/top/kv_img4.jpg); }
						.p-top__kv .slider .bx-wrapper {
								margin-bottom: 0;
								height: 100%; }
								.p-top__kv .slider .bx-wrapper .bx-viewport {
										height: 100% !important; }
								.p-top__kv .slider .bx-wrapper .bx-pager {
										bottom: 40px; }
										.p-top__kv .slider .bx-wrapper .bx-pager.bx-default-pager a {
												background: rgba(255, 255, 255, 0.7);
												width: 6px;
												height: 6px;
												position: relative;
												margin: 0 16px;
												border: 1px solid transparent;
												border-radius: 100%; }
												.p-top__kv .slider .bx-wrapper .bx-pager.bx-default-pager a:before {
														display: none;
														content: "";
														width: 28px;
														height: 28px;
														position: absolute;
														left: -12px;
														top: -12px;
														border: 1px solid #fff;
														border-radius: 100%; }
												.p-top__kv .slider .bx-wrapper .bx-pager.bx-default-pager a.active {
														background: white;
														border: 1px solid #fff; }
														.p-top__kv .slider .bx-wrapper .bx-pager.bx-default-pager a.active:before {
																display: block; }
						.p-top__kv .slider .slide-counter {
								position: absolute;
								bottom: 80px;
								left: 0;
								width: 100%;
								z-index: 2999;
								color: #fff;
								font-size: 1vw;
								text-align: center;
								font-weight: normal; }
								@media screen and (max-width: 767px) {
										.p-top__kv .slider .slide-counter {
												font-size: 3.83562vw; } }
				.p-top__kv .block1 {
						float: left;
						background: #E4E1DE;
						height: 82vh;
						position: relative;
						margin-left: -7.2857vw;
						margin-top: 9vh;
						-webkit-box-sizing: border-box;
						-moz-box-sizing: border-box;
						box-sizing: border-box;
						z-index: 1;
						padding: 8.75vh 10vw;
						position: relative;
						display: table; }
						.p-top__kv .block1-wrap {
								display: table-cell;
								vertical-align: middle; }
						.p-top__kv .block1 .lead {
								color: #8C6F54;
								font-size: 1vw;
								margin-bottom: 14.75vh; }
								@media screen and (max-width: 767px) {
										.p-top__kv .block1 .lead {
												font-size: 3.83562vw; } }
						.p-top__kv .block1 h2 {
								font-weight: 400;
								font-family: "Sourse Han Serif", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "リュウミン R-KL", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
								font-size: 3.28571vw;
								line-height: 104.5454%;
								letter-spacing: 0.04em;
								margin-bottom: 3.4285vh; }
								@media screen and (max-width: 767px) {
										.p-top__kv .block1 h2 {
												font-size: 12.60274vw; } }
						.p-top__kv .block1 h3 {
								font-size: 1.42857vw;
								font-weight: 600;
								font-family: "Sourse Han Serif", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "リュウミン R-KL", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
								margin-bottom: 16.875vh;
								letter-spacing: 0.08em; }
								@media screen and (max-width: 767px) {
										.p-top__kv .block1 h3 {
												font-size: 5.47945vw; } }
						.p-top__kv .block1 .anchor a,
						.p-top__kv .block1 .anchor span {
								color: #A1007D;
								text-decoration: none;
								display: inline-block;
								*display: inline;
								*zoom: 1;
								cursor: pointer;
								background-size: 53px 5px;
								padding-right: 75px; }
								.p-top__kv .block1 .anchor a:hover,
								.p-top__kv .block1 .anchor span:hover {
										color: #470F37;
										opacity: 1;
										-ms-filter: "alpha(opacity=100)";
										filter: alpha(opacity=100); }
		.p-top__news {
				margin-right: 12.4285vw; }
				.p-top__news .heading,
				.p-top__news .block1 {
						display: inline-block;
						*display: inline;
						*zoom: 1;
						white-space: normal;
						vertical-align: middle; }
				.p-top__news .heading {
						margin-right: 9.2142vw; }
				.p-top__news .block1 li a {
						display: block;
						border-bottom: 1px solid #CDCDCD;
						padding-top: 20px;
						padding-bottom: 24px;
						position: relative;
						text-decoration: none;
						padding-right: 203px;
						color: #302D39; }
						.p-top__news .block1 li a .txt1 {
								margin-bottom: 15px;
								font-weight: normal; }
								.p-top__news .block1 li a .txt1 .date,
								.p-top__news .block1 li a .txt1 .category {
										display: inline-block;
										*display: inline;
										*zoom: 1;
										vertical-align: middle; }
								.p-top__news .block1 li a .txt1 .date {
										font-size: 1vw;
										margin-right: 28px; }
										@media screen and (max-width: 767px) {
												.p-top__news .block1 li a .txt1 .date {
														font-size: 3.83562vw; } }
								.p-top__news .block1 li a .txt1 .category {
										color: #8C6F54; }
						.p-top__news .block1 li a h3 {
								font-weight: 600;
								font-size: 1.42857vw;
								font-family: "Sourse Han Serif", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "リュウミン R-KL", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif; }
								@media screen and (max-width: 767px) {
										.p-top__news .block1 li a h3 {
												font-size: 5.47945vw; } }
						.p-top__news .block1 li a:before, .p-top__news .block1 li a:after {
								display: block;
								content: "";
								position: absolute;
								-webkit-transition: 0.3s ease all;
								-moz-transition: 0.3s ease all;
								-ms-transition: 0.3s ease all;
								transition: 0.3s ease all; }
						.p-top__news .block1 li a:before {
								width: 0;
								bottom: -1px;
								left: 0;
								border-bottom: 1px solid #A1007D; }
						.p-top__news .block1 li a:after {
								width: 8px;
								height: 14px;
								right: 23px;
								top: 50%;
								-webkit-transform: translateY(-50%);
								-moz-transform: translateY(-50%);
								transform: translateY(-50%); }
						.p-top__news .block1 li a:hover {
								opacity: 1;
								-ms-filter: "alpha(opacity=100)";
								filter: alpha(opacity=100); }
								.p-top__news .block1 li a:hover:before {
										width: 100%; }
								.p-top__news .block1 li a:hover:after {
										right: 8px; }
		.p-top__about-img1,
		.p-top__about .block1, .p-top__about-movie, .p-top__about-img2 {
				display: inline-block;
				*display: inline;
				*zoom: 1;
				vertical-align: middle;
				white-space: normal; }
		.p-top__about-img1 {
				background: url(img/top/about_img1.jpg) no-repeat center;
				background-size: cover;
				height: 100vh;
				width: 53.9285vw;
				margin-right: 8.1428vw; }
		.p-top__about .block1 {
				width: 32.1428vw;
				margin-right: 7.8571vw; }
				.p-top__about .block1 .c-title1 {
						position: relative;
						margin-left: -14.2857vw; }
				.p-top__about .block1 > p {
						line-height: 193%; }
		.p-top__about-movie {
				vertical-align: bottom;
				position: relative;
				z-index: 2; }
				.p-top__about-movie video {
						width: 100%;
						height: auto; }
		.p-top__about-img2 {
				background: url(img/top/about_img2.jpg) no-repeat center;
				background-size: cover;
				height: 100vh;
				width: 38.2142vw;
				position: relative;
				margin-left: -10vw;
				z-index: 1; }
		.p-top__menu {
				padding-left: 7.8571vw; }
				.p-top__menu-heading, .p-top__menu-course, .p-top__menu-party, .p-top__menu-img1 {
						display: inline-block;
						*display: inline;
						*zoom: 1; }
				.p-top__menu-heading {
						padding-top: 7.7142vw;
						margin-right: 7.5vw;
						width: 25vw;
						vertical-align: top;
						white-space: normal;
						vertical-align: top; }
						.p-top__menu-heading > p {
								line-height: 193%; }
				.p-top__menu-course {
						vertical-align: middle;
						margin-right: 11.5714vw; }
						.p-top__menu-course .block1,
						.p-top__menu-course .block2 {
								display: inline-block;
								*display: inline;
								*zoom: 1;
								vertical-align: middle;
								white-space: normal; }
						.p-top__menu-course .block1 {
								margin-right: 7.8571vw;
								padding-top: 4.2857vw;
								width: 32.1428vw; }
								.p-top__menu-course .block1 > p {
										line-height: 193%; }
						.p-top__menu-course .block2 p,
						.p-top__menu-course .block2 .img1 {
								display: inline-block;
								*display: inline;
								*zoom: 1;
								vertical-align: middle;
								position: relative; }
						.p-top__menu-course .block2 p {
								position: relative;
								z-index: 2; }
								.p-top__menu-course .block2 p img {
										width: 128px;
										height: 508px; }
						.p-top__menu-course .block2 .img1 {
								margin-left: -4.0714vw; }
								.p-top__menu-course .block2 .img1 img {
										position: relative;
										z-index: 1; }
								.p-top__menu-course .block2 .img1:before {
										display: block;
										content: "";
										position: absolute;
										background: url(img/top/menu_course_img1.jpg) no-repeat center;
										background-size: cover;
										width: 100%;
										height: 100%;
										right: -2vw;
										bottom: -2vw;
										-webkit-filter: blur(20px);
										-moz-filter: blur(20px);
										-ms-filter: blur(20px);
										filter: blur(20px);
										margin: -20px;
										opacity: 0.5;
										-ms-filter: "alpha(opacity=50)";
										filter: alpha(opacity=50); }
				.p-top__menu-party {
						position: relative;
						vertical-align: middle;
						z-index: 2; }
						.p-top__menu-party .block1,
						.p-top__menu-party .block2 {
								display: inline-block;
								*display: inline;
								*zoom: 1;
								vertical-align: middle;
								white-space: normal;
								position: relative; }
						.p-top__menu-party .block1 {
								z-index: 2; }
								.p-top__menu-party .block1 > p {
										line-height: 193%;
										width: 32.1428vw; }
										.p-top__menu-party .block1 > p.txt1 {
												margin-top: 2.8571vw;
												width: auto; }
												.p-top__menu-party .block1 > p.txt1 img {
														width: 697px;
														height: 153px; }
						.p-top__menu-party .block2 {
								margin-left: -12.1428vw; }
								.p-top__menu-party .block2 .img1 img {
										position: relative;
										z-index: 1; }
								.p-top__menu-party .block2 .img1:before {
										display: block;
										content: "";
										position: absolute;
										background: url(img/top/menu_party_img1.jpg) no-repeat center;
										background-size: cover;
										width: 100%;
										height: 100%;
										right: -2vw;
										bottom: -2vw;
										-webkit-filter: blur(20px);
										-moz-filter: blur(20px);
										-ms-filter: blur(20px);
										filter: blur(20px);
										margin: -20px;
										opacity: 0.5;
										-ms-filter: "alpha(opacity=50)";
										filter: alpha(opacity=50); }
				.p-top__menu-img1 {
						background: url(img/top/menu_img.jpg) no-repeat center;
						background-size: cover;
						width: 40.4285vw;
						height: 100vh;
						position: relative;
						margin-left: -11.2857vw;
						z-index: 1;
						vertical-align: middle;
						overflow: hidden; }
						.p-top__menu-img1 video {
								width: auto;
								height: 100vh;
								position: absolute;
								top: 50%;
								left: 50%;
								-webkit-transform: translate(-50%, -50%);
								-moz-transform: translate(-50%, -50%);
								transform: translate(-50%, -50%);
								margin: auto; }
		.p-top__recruit .block1,
		.p-top__recruit .block2 {
				display: inline-block;
				*display: inline;
				*zoom: 1;
				white-space: normal;
				vertical-align: middle; }
		.p-top__recruit .block1 {
				width: 32.1428vw;
				margin-right: 7.7142vw; }
				.p-top__recruit .block1 .c-title1 {
						margin-bottom: 4.5714vw; }
				.p-top__recruit .block1 p {
						line-height: 193%; }
		.p-top__recruit .block2 .img2 {
				position: relative;
				margin-top: -7.7142vw;
				margin-left: 11.8571vw; }
		.p-top__instagram {
				position: relative;
				z-index: 1;
				margin-left: -6.6428vw;
				margin-right: 12.8571vw; }
				.p-top__instagram .heading,
				.p-top__instagram .block1 {
						display: inline-block;
						*display: inline;
						*zoom: 1;
						white-space: normal; }
				.p-top__instagram .heading {
						vertical-align: top;
						padding-top: 5vw;
						margin-right: 10.0712vw; }
						.p-top__instagram .heading .c-link1 {
								text-align: right; }
				.p-top__instagram .block1 ul,
				.p-top__instagram .block1 #sb_instagram {
						width: 400px !important; }
				.p-top__instagram .block1 li,
				.p-top__instagram .block1 .sbi_item {
						float: left;
						width: 50%;
						position: relative;
						-webkit-transform: translateY(25%);
						-moz-transform: translateY(25%);
						transform: translateY(25%); }
						.p-top__instagram .block1 li:nth-child(2n+1),
						.p-top__instagram .block1 .sbi_item:nth-child(2n+1) {
								clear: both; }
						.p-top__instagram .block1 li:nth-child(2n),
						.p-top__instagram .block1 .sbi_item:nth-child(2n) {
								-webkit-transform: translateY(-25%);
								-moz-transform: translateY(-25%);
								transform: translateY(-25%); }
				.p-top__instagram .block1 .sbi_photo {
						display: block; }
		.p-top__shopinfo {
				background: #2B2B2B;
				padding-right: 8.2857vw;
				color: #fff;
				vertical-align: top; }
				.p-top__shopinfo-map, .p-top__shopinfo-info {
						display: inline-block;
						*display: inline;
						*zoom: 1;
						white-space: normal;
						vertical-align: middle; }
				.p-top__shopinfo-map #map {
						width: 42.8571vw;
						height: 100vh; }
				.p-top__shopinfo-info {
						position: relative;
						z-index: 2;
						padding-left: 8.2857vw;
						padding-right: 4.2857vw; }
						.p-top__shopinfo-info .c-title1 {
								position: relative;
								margin-left: -22.5714vw; }
						.p-top__shopinfo-info .block1 {
								border-top: 1px solid #9B9BA1;
								border-bottom: 1px solid #9B9BA1;
								padding-top: 23px;
								padding-bottom: 23px; }
								.p-top__shopinfo-info .block1 table {
										width: 100%; }
								.p-top__shopinfo-info .block1 th,
								.p-top__shopinfo-info .block1 td {
										font-size: 1.14286vw;
										padding-top: 9px;
										padding-bottom: 9px;
										line-height: 160%; }
										@media screen and (max-width: 767px) {
												.p-top__shopinfo-info .block1 th,
												.p-top__shopinfo-info .block1 td {
														font-size: 4.38356vw; } }
								.p-top__shopinfo-info .block1 th {
										text-align: left;
										color: #818181;
										vertical-align: top;
										width: 8vw;
										font-weight: 400; }
								.p-top__shopinfo-info .block1 td a {
										color: #A1007D;
										text-decoration: none; }
		.p-top__contact {
				position: relative;
				-webkit-writing-mode: vertical-rl;
				-ms-writing-mode: tb-rl;
				writing-mode: vertical-rl;
				width: 30vw;
				height: 100vh;
				z-index: 9;
				font-weight: normal;
				vertical-align: top; }
				.p-top__contact a {
						width: 100%;
						height: 100%;
						top: 0;
						left: 0;
						display: block;
						color: #fff;
						background: url(img/top/contact_bg1.jpg) no-repeat center;
						background-size: cover;
						font-size: 8.57143vw;
						line-height: 120%;
						position: absolute; }
						@media screen and (max-width: 767px) {
								.p-top__contact a {
										font-size: 32.87671vw; } }
						.p-top__contact a span {
								display: inline-block;
								*display: inline;
								*zoom: 1;
								position: absolute;
								top: 50%;
								left: 50%;
								-webkit-transform: translate(-50%, -50%);
								-moz-transform: translate(-50%, -50%);
								transform: translate(-50%, -50%); }
								.p-top__contact a span:before, .p-top__contact a span:after {
										display: block;
										content: "";
										position: absolute;
										top: 0;
										left: -3px;
										border-left: 0.57142vw solid #fff;
										height: 100%; }
								.p-top__contact a span:before {
										-webkit-transition: transform 0.3s ease 0.3s;
										-moz-transition: transform 0.3s ease 0.3s;
										-ms-transition: transform 0.3s ease 0.3s;
										transition: transform 0.3s ease 0.3s;
										-webkit-transform: scaleY(1);
										-moz-transform: scaleY(1);
										transform: scaleY(1);
										transform-origin: 100% 100%; }
								.p-top__contact a span:after {
										-webkit-transition: transform 0.3s ease;
										-moz-transition: transform 0.3s ease;
										-ms-transition: transform 0.3s ease;
										transition: transform 0.3s ease;
										-webkit-transform: scaleY(0);
										-moz-transform: scaleY(0);
										transform: scaleY(0);
										transform-origin: 0 0; }
						.p-top__contact a:hover {
								opacity: 1;
								-ms-filter: "alpha(opacity=100)";
								filter: alpha(opacity=100); }
								.p-top__contact a:hover span:before {
										-webkit-transition: transform 0.3s ease;
										-moz-transition: transform 0.3s ease;
										-ms-transition: transform 0.3s ease;
										transition: transform 0.3s ease;
										-webkit-transform: scaleY(0);
										-moz-transform: scaleY(0);
										transform: scaleY(0); }
								.p-top__contact a:hover span:after {
										-webkit-transition: transform 0.3s ease 0.3s;
										-moz-transition: transform 0.3s ease 0.3s;
										-ms-transition: transform 0.3s ease 0.3s;
										transition: transform 0.3s ease 0.3s;
										-webkit-transform: scaleY(1);
										-moz-transform: scaleY(1);
										transform: scaleY(1); }

/* ----------------------------- スマホ */
@media screen and (max-width: 767px) {
		.p-top-whole {
				height: auto;
				overflow: auto;
				min-height: initial; }
		.p-top-wrap {
				white-space: normal; }
		.p-top-content {
				display: block; }
				.p-top-contentwrap {
						white-space: normal;
						display: block;
						overflow: hidden; }
		.p-top__scroll {
				display: none; }
		.p-top__kv {
				margin-right: 0;
				margin-bottom: 5vw;
				position: relative; }
				.p-top__kv .slider {
						width: 100%;
						height: 131.4666vw;
						float: none; }
						.p-top__kv .slider li:before {
								content: "";
								display: block;
								background: rgba(0, 0, 0, 0.2);
								position: absolute;
								left: 0;
								top: 0;
								width: 100%;
								height: 100%;
								z-index: 2; }
						.p-top__kv .slider .bx-wrapper .bx-pager {
								bottom: 15px;
								text-align: left; }
								.p-top__kv .slider .bx-wrapper .bx-pager.bx-default-pager a {
										margin-left: 24px;
										margin-right: 0; }
										.p-top__kv .slider .bx-wrapper .bx-pager.bx-default-pager a:before {
												width: 24px;
												height: 24px;
												left: -10px;
												top: -10px; }
						.p-top__kv .slider .slide-counter {
								bottom: 20px;
								right: 0;
								text-align: right;
								width: auto;
								padding-right: 20px; }
				.p-top__kv .block1 {
						position: absolute;
						-webkit-transform: translateY(-50%);
						-moz-transform: translateY(-50%);
						transform: translateY(-50%);
						margin: auto;
						top: 50%;
						width: 100%;
						height: 100%;
						background: rgba(0, 0, 0, 0.2);
						float: none;
						background: transparent;
						color: #fff;
						padding: 12vw 6.66vw;
						display: block; }
						.p-top__kv .block1-wrap {
								display: block; }
						.p-top__kv .block1 .lead {
								color: #fff;
								margin-bottom: 29.6vw; }
						.p-top__kv .block1 h2 {
								margin-bottom: 4vh; }
						.p-top__kv .block1 h3 {
								margin-bottom: 0; }
		.p-top__news {
				margin-right: 0;
				margin-bottom: 6vw;
				padding: 10.13vw 7.3vw; }
				.p-top__news .heading,
				.p-top__news .block1 {
						display: block; }
				.p-top__news .heading {
						margin-right: 0;
						margin-bottom: 5vw; }
				.p-top__news .block1 ul {
						margin-bottom: 10vw; }
				.p-top__news .block1 li a {
						padding-right: 50px; }
						.p-top__news .block1 li a .txt1 {
								margin-bottom: 8px; }
						.p-top__news .block1 li a h3 {
								font-size: 4.93151vw; }
		.p-top__about {
				margin-right: 0; }
				.p-top__about-img1,
				.p-top__about .block1, .p-top__about-movie, .p-top__about-img2 {
						display: block; }
				.p-top__about-img1 {
						width: 100%;
						height: auto;
						margin-right: 0;
						padding-top: 90.666%; }
				.p-top__about .block1 {
						width: auto;
						margin-right: 0;
						padding: 10.13vw 7.3vw;
						margin-bottom: 5vw; }
						.p-top__about .block1 .c-title1 {
								margin-left: 0; }
				.p-top__about-movie {
						width: 80vw;
						position: relative;
						z-index: 2; }
				.p-top__about-img2 {
						width: 100%;
						height: auto;
						padding-top: 90.666%;
						margin-left: 0;
						margin-top: -18.666vw;
						position: relative; }
		.p-top__menu {
				width: auto !important;
				padding: 10.13vw 7.3vw; }
				.p-top__menu-heading, .p-top__menu-course, .p-top__menu-party, .p-top__menu-img1 {
						display: block; }
				.p-top__menu-heading {
						margin-right: 0;
						width: auto;
						padding-top: 0;
						margin-bottom: 14vw; }
				.p-top__menu-course {
						margin-right: 0;
						margin-bottom: 25vw; }
						.p-top__menu-course .block1,
						.p-top__menu-course .block2 {
								display: block; }
						.p-top__menu-course .block1 {
								width: auto;
								margin-right: 0;
								margin-bottom: 12vw; }
						.p-top__menu-course .block2 {
								position: relative; }
								.p-top__menu-course .block2 p,
								.p-top__menu-course .block2 .img1 {
										display: block; }
								.p-top__menu-course .block2 p {
										position: absolute;
										left: 50%;
										margin-left: -35.73316vw;
										margin-top: 1.866vw; }
										.p-top__menu-course .block2 p img {
												width: 14.1333vw;
												height: auto; }
								.p-top__menu-course .block2 .img1 {
										width: 57.333vw;
										margin-left: auto;
										margin-right: auto; }
				.p-top__menu-party {
						position: relative;
						z-index: 2; }
						.p-top__menu-party .block1,
						.p-top__menu-party .block2 {
								display: block; }
						.p-top__menu-party .block1 {
								margin-left: 0;
								margin-bottom: 16vw; }
								.p-top__menu-party .block1 > p {
										width: auto; }
						.p-top__menu-party .block2 {
								margin-left: 0;
								position: relative; }
								.p-top__menu-party .block2 .txt1 {
										position: absolute;
										top: 9.333vw;
										right: -2.8003vw;
										z-index: 2; }
										.p-top__menu-party .block2 .txt1 img {
												width: 77.333vw;
												height: auto; }
								.p-top__menu-party .block2 .img1 {
										width: 75.4666vw;
										margin-left: auto;
										margin-right: auto; }
				.p-top__menu-img1 {
						width: 100vw;
						height: auto;
						position: relative;
						margin-top: -9.3vw;
						margin-left: -7.3vw;
						margin-right: -7.3vw;
						background-image: none; }
						.p-top__menu-img1 video {
								width: 100%;
								height: 90.6666vw;
								position: static;
								top: 0;
								left: 0;
								-webkit-transform: translate(0, 0);
								-moz-transform: translate(0, 0);
								transform: translate(0, 0); }
		.p-top__recruit {
				padding: 0 7.3vw 10.13vw;
				margin-bottom: 11.2vw; }
				.p-top__recruit .block1,
				.p-top__recruit .block2 {
						display: block; }
				.p-top__recruit .block1 {
						width: auto;
						margin-right: 0;
						margin-bottom: 13.333vw; }
						.p-top__recruit .block1 .c-title1 {
								margin-bottom: 8vw; }
				.p-top__recruit .block2 .img1 {
						width: 40vw; }
				.p-top__recruit .block2 .img2 {
						margin-top: 0;
						width: 75.73vw;
						margin-left: auto;
						margin-top: -8vw;
						position: relative;
						z-index: 1; }
		.p-top__instagram {
				padding: 0 7.3vw 18.13vw;
				margin-left: 0;
				margin-right: 0; }
				.p-top__instagram .heading,
				.p-top__instagram .block1 {
						display: block; }
				.p-top__instagram .heading {
						margin-bottom: 22.533vw; }
				.p-top__instagram .block1 ul,
				.p-top__instagram .block1 #sb_instagram {
						width: auto !important;
						margin-bottom: 12.9vw; }
				.p-top__instagram .block1 li,
				.p-top__instagram .block1 .sbi_item {
						-webkit-transform: translateY(0);
						-moz-transform: translateY(0);
						transform: translateY(0); }
						.p-top__instagram .block1 li:nth-child(2n),
						.p-top__instagram .block1 .sbi_item:nth-child(2n) {
								-webkit-transform: translateY(-25%);
								-moz-transform: translateY(-25%);
								transform: translateY(-25%); }
		.p-top__shopinfo {
				padding-right: 0; }
				.p-top__shopinfo-map, .p-top__shopinfo-info {
						display: block; }
				.p-top__shopinfo-map #map {
						width: auto;
						height: 90.666vw; }
				.p-top__shopinfo-info {
						padding: 8vw 8vw 17.866vw; }
						.p-top__shopinfo-info .c-title1 {
								margin-left: 0;
								position: relative; }
						.p-top__shopinfo-info .block1 table,
						.p-top__shopinfo-info .block1 tbody,
						.p-top__shopinfo-info .block1 tr,
						.p-top__shopinfo-info .block1 th,
						.p-top__shopinfo-info .block1 td {
								display: block;
								width: 100%;
								-webkit-box-sizing: border-box;
								-moz-box-sizing: border-box;
								box-sizing: border-box; }
						.p-top__shopinfo-info .block1 th {
								width: auto;
								padding-bottom: 3vw; }
						.p-top__shopinfo-info .block1 td {
								padding-top: 0; }
		.p-top__contact {
				width: auto;
				height: 48.4vw;
				-webkit-writing-mode: horizontal-tb;
				-ms-writing-mode: lr-tb;
				writing-mode: horizontal-tb; }
				.p-top__contact a {
						font-size: 16.43836vw; }
						.p-top__contact a span:before, .p-top__contact a span:after {
								border-left: 0;
								border-bottom: 0.57142vw solid #fff;
								width: 100%;
								height: 1px;
								top: auto;
								left: 0;
								bottom: -3px; }
						.p-top__contact a span:before {
								-webkit-transform: scale(1, 1);
								-moz-transform: scale(1, 1);
								transform: scale(1, 1); }
						.p-top__contact a span:after {
								-webkit-transform: scale(0, 1);
								-moz-transform: scale(0, 1);
								transform: scale(0, 1); }
						.p-top__contact a:hover span:before {
								-webkit-transform: scale(0, 1);
								-moz-transform: scale(0, 1);
								transform: scale(0, 1); }
						.p-top__contact a:hover span:after {
								-webkit-transform: scale(1, 1);
								-moz-transform: scale(1, 1);
								transform: scale(1, 1); } }

/* ----------------------------- 3. 下層ページ */
/*=======================================
About
=========================================*/
.p-about__identity {
		margin-bottom: 11.0714vw; }
		.p-about__identity .block1 {
				margin-bottom: 13.7857vw; }
				.p-about__identity .block1.c-txt1 .txt {
						text-align: justify; }
		.p-about__identity-img1 {
				background: url(img/about/identity_img1.jpg) no-repeat center;
				background-size: cover;
				padding-top: 46.4285vw; }

.p-about__concept {
		margin-bottom: 17vw; }
		.p-about__concept .block1 {
				margin-bottom: 11.4275vw; }
				.p-about__concept .block1.c-txt1 .en {
						text-align: justify; }
		.p-about__concept .block2 {
				margin-bottom: 12.2857vw;
				position: relative; }
				.p-about__concept .block2:before {
						display: block;
						content: "";
						position: absolute;
						right: 0;
						z-index: 1;
						background: #e4e1de;
						width: 88.8571vw;
						height: 100%;
						-webkit-transform: translateY(115px);
						-moz-transform: translateY(115px);
						transform: translateY(115px);
						background: -moz-linear-gradient(top, #e4e1de 0%, #eeeeee 100%);
						background: -webkit-linear-gradient(top, #e4e1de 0%, #eeeeee 100%);
						background: linear-gradient(to bottom, #e4e1de 0%, #eeeeee 100%);
						filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#e4e1de', endColorstr='#eeeeee',GradientType=0 ); }
				.p-about__concept .block2 .img1 {
						position: relative;
						margin-right: -6.4285vw;
						float: right;
						z-index: 2;
						width: 53.5714vw; }
				.p-about__concept .block2 .img2 {
						float: left;
						position: relative;
						margin-top: -8vw;
						z-index: 2;
						max-width: 41.4285vw; }
						.p-about__concept .block2 .img2 img {
								position: relative;
								z-index: 1; }
						.p-about__concept .block2 .img2:before {
								display: block;
								content: "";
								position: absolute;
								background: url(img/about/concept_img2.jpg) no-repeat center;
								background-size: cover;
								width: 100%;
								height: 100%;
								right: -2vw;
								bottom: -2vw;
								-webkit-filter: blur(20px);
								-moz-filter: blur(20px);
								-ms-filter: blur(20px);
								filter: blur(20px);
								margin: -20px;
								opacity: 0.4;
								-ms-filter: "alpha(opacity=40)";
								filter: alpha(opacity=40); }

.p-about__greeting {
		margin-bottom: 14.5714vw; }
		.p-about__greeting .block1 {
				margin-bottom: 5.3571vw; }
				.p-about__greeting .block1 .txt {
						width: 42.85714vw; }
		.p-about__greeting .block2 {
				width: 42.85714vw;
				margin-left: auto; }
				.p-about__greeting .block2 .c-txt2 {
						margin-bottom: 3.5714vw; }

.p-about__chef {
		margin-bottom: 16.5vw; }
		.p-about__chef .img1 {
				float: left;
				width: 33.4285vw;
				position: relative; }
				.p-about__chef .img1 img {
						position: relative;
						z-index: 1; }
				.p-about__chef .img1:before {
						display: block;
						content: "";
						position: absolute;
						background: url(img/about/chef_img1.jpg) no-repeat center;
						background-size: cover;
						width: 100%;
						height: 100%;
						right: -2vw;
						bottom: -2vw;
						-webkit-filter: blur(20px);
						-moz-filter: blur(20px);
						-ms-filter: blur(20px);
						filter: blur(20px);
						margin: -20px;
						opacity: 0.4;
						-ms-filter: "alpha(opacity=40)";
						filter: alpha(opacity=40); }
		.p-about__chef .box1 {
				float: right;
				width: 27.8571vw;
				padding-top: 2.2857vw; }
				.p-about__chef .box1 .c-txt1 {
						margin-bottom: 5.1428vw; }
						.p-about__chef .box1 .c-txt1 .h {
								margin-bottom: 5vw;
								font-size: 1.14286vw; }
								@media screen and (max-width: 767px) {
										.p-about__chef .box1 .c-txt1 .h {
												font-size: 4.38356vw; } }
						.p-about__chef .box1 .c-txt1 .txt {
								margin-bottom: 1.214vw; }
				.p-about__chef .box1 > p {
						line-height: 193%; }

.p-about__info .block1 {
		float: left;
		width: 35.2857vw; }
		.p-about__info .block1-wrap {
				float: right;
				width: 28.5714vw;
				padding-top: 6vw; }
		.p-about__info .block1 .box1 {
				border-top: 1px solid #9B9BA1;
				border-bottom: 1px solid #9B9BA1;
				padding-top: 1.6428vw;
				padding-bottom: 1.6428vw; }
				.p-about__info .block1 .box1 table {
						width: 100%; }
				.p-about__info .block1 .box1 th,
				.p-about__info .block1 .box1 td {
						font-size: 1.14286vw;
						padding-top: 9px;
						padding-bottom: 9px;
						line-height: 160%; }
						@media screen and (max-width: 767px) {
								.p-about__info .block1 .box1 th,
								.p-about__info .block1 .box1 td {
										font-size: 4.38356vw; } }
				.p-about__info .block1 .box1 th {
						text-align: left;
						color: #818181;
						vertical-align: top;
						width: 8vw;
						font-weight: normal; }

.p-about__info .map {
		float: right;
		width: 49.8571vw; }
		.p-about__info .map #map {
				height: 57.1428vw; }

/* ----------------------------- スマホ */
@media screen and (max-width: 767px) {
		.p-about__concept .c-txt1 .h,
		.p-about__concept .c-txt1 .txt {
				text-align: left !important; }
		.p-about__concept .block2 {
				position: relative; }
				.p-about__concept .block2:before {
						width: 96vw;
						height: 100%;
						top: -15vw; }
				.p-about__concept .block2 .img1 {
						margin-right: -8vw;
						width: 75vw; }
				.p-about__concept .block2 .img2 {
						width: 50vw;
						max-width: initial; }
		.p-about__greeting {
				position: relative;
				z-index: 1; }
				.p-about__greeting .block1 .txt {
						width: auto; }
				.p-about__greeting .block2 {
						width: 70vw; }
						.p-about__greeting .block2 .c-txt2 {
								margin-bottom: 8.5714vw; }
		.p-about__chef .img1,
		.p-about__chef .box1 {
				float: none;
				width: auto; }
		.p-about__chef .img1 {
				width: 45vw;
				margin-left: auto;
				margin-right: auto;
				margin-bottom: 6vw; }
		.p-about__info .block1,
		.p-about__info .map {
				float: none;
				width: auto; }
		.p-about__info .block1 {
				padding-left: 8vw;
				padding-right: 8vw;
				margin-bottom: 6vw; }
				.p-about__info .block1-wrap {
						float: none;
						width: auto; }
				.p-about__info .block1 .box1 th {
						width: 90px; }
		.p-about__info .map #map {
				height: 90.6666vw; } }

/*=======================================
Menu
=========================================*/
.p-menu__sidebar {
		float: left;
		width: 18.5714vw;
		padding-left: 2.14286vw;
		position: absolute;
		left: 118px;
		z-index: 9; }
		#container > .p-menu__sidebar {
				top: calc(100vh + 7.1428vw); }
		.p-menu__sidebar .block1 {
				z-index: 1;
				width: 13.5714vw; }
		.p-menu__sidebar ul {
				padding-top: 2.2857vw;
				padding-bottom: 2.2857vw;
				background: #E4E1DE; }
		.p-menu__sidebar li {
				position: relative;
				font-size: 1.28571vw; }
				@media screen and (max-width: 767px) {
						.p-menu__sidebar li {
								font-size: 4.93151vw; } }
				.p-menu__sidebar li.is-current a {
						color: #A1007D; }
						.p-menu__sidebar li.is-current a:before {
								opacity: 1;
								-ms-filter: "alpha(opacity=100)";
								filter: alpha(opacity=100); }
				.p-menu__sidebar li a {
						display: block;
						padding: 1vw 1.8571vw;
						color: #302D39;
						text-decoration: none; }
						.p-menu__sidebar li a:before {
								-webkit-transition: 0.3s ease all;
								-moz-transition: 0.3s ease all;
								-ms-transition: 0.3s ease all;
								transition: 0.3s ease all;
								display: block;
								content: "";
								position: absolute;
								opacity: 0;
								-ms-filter: "alpha(opacity=0)";
								filter: alpha(opacity=0);
								width: 8px;
								height: 8px;
								background: #A1007D;
								left: -4px;
								top: 50%;
								margin-top: -4px;
								border-radius: 100%; }
						.p-menu__sidebar li a:hover {
								opacity: 1;
								-ms-filter: "alpha(opacity=100)";
								filter: alpha(opacity=100);
								color: #A1007D; }
								.p-menu__sidebar li a:hover:before {
										opacity: 1;
										-ms-filter: "alpha(opacity=100)";
										filter: alpha(opacity=100); }
		.p-menu__sidebar p {
				font-size: 0.78571vw;
				margin-top: 2.4285vw;
				color: #818181; }
				@media screen and (max-width: 767px) {
						.p-menu__sidebar p {
								font-size: 3.0137vw; } }

.p-menu__content-wrap {
		padding-top: 8.3571vw;
		padding-bottom: 9.6428vw; }
		.p-menu__content-wrap.lunch {
				padding-top: 1.4285vw; }
		.p-menu__content-wrap.dessert .block1 .detail {
				background: #2B2B2B !important;
				color: #fff !important; }
				.p-menu__content-wrap.dessert .block1 .detail td {
						padding-left: 0 !important; }
		.p-menu__content-wrap.is-black {
				background: #2B2B2B;
				color: #fff; }
				.p-menu__content-wrap.is-black .block1 .detail-title p span:before, .p-menu__content-wrap.is-black .block1 .detail-title p span:after {
						border-top-color: #fff; }
				.p-menu__content-wrap.is-black .block1 .detail {
						color: #302D39; }

.p-menu__content-detail {
		float: left;
		width: 37.2857vw; }

.p-menu__content-img1 {
		float: right;
		width: 25.7142vw;
		text-align: right;
		padding-top: 2.5vw; }

.p-menu__content .wrap {
		width: 67.2856vw;
		margin-left: auto; }

.p-menu__content .heading {
		margin-bottom: 5.3571vw; }
		.p-menu__content .heading .txt1 {
				font-size: 1.14286vw;
				line-height: 140%;
				margin-bottom: 0.5712vw; }
				@media screen and (max-width: 767px) {
						.p-menu__content .heading .txt1 {
								font-size: 4.38356vw; } }
		.p-menu__content .heading h3 {
				font-size: 5vw;
				font-weight: normal;
				line-height: 140%;
				margin-bottom: 3.4285vw; }
				@media screen and (max-width: 767px) {
						.p-menu__content .heading h3 {
								font-size: 19.17808vw; } }
		.p-menu__content .heading .txt2 {
				font-size: 1.14286vw;
				line-height: 200%; }
				@media screen and (max-width: 767px) {
						.p-menu__content .heading .txt2 {
								font-size: 4.38356vw; } }

.p-menu__content .block1 li {
		margin-bottom: 6.4285vw; }
		.p-menu__content .block1 li:last-child {
				margin-bottom: 0; }
		.p-menu__content .block1 li h4 {
				font-size: 1.71429vw;
				font-family: "Sourse Han Serif", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "リュウミン R-KL", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
				font-weight: 600;
				line-height: 160%;
				margin-bottom: 1.0714vw; }
				@media screen and (max-width: 767px) {
						.p-menu__content .block1 li h4 {
								font-size: 6.57534vw; } }
				.p-menu__content .block1 li h4.hasPrice {
						float: left;
						width: 80.7692%; }
		.p-menu__content .block1 li .price {
				float: right;
				width: 19.2307%;
				text-align: right;
				font-size: 1.71429vw;
				line-height: 160%;
				font-weight: normal; }
				@media screen and (max-width: 767px) {
						.p-menu__content .block1 li .price {
								font-size: 6.57534vw; } }
		.p-menu__content .block1 li .sup {
				color: #818181;
				font-size: 1vw;
				line-height: 170%;
				clear: both; }
				@media screen and (max-width: 767px) {
						.p-menu__content .block1 li .sup {
								font-size: 3.83562vw; } }

.p-menu__content .block1 .detail-title {
		border-top: 1px solid #9B9BA1;
		margin-top: 2.2857vw;
		padding-top: 1.6428vw;
		padding-bottom: 1.6428vw;
		cursor: pointer;
		clear: both; }
		.p-menu__content .block1 .detail-title h5 {
				font-weight: normal;
				font-size: 1.57143vw;
				float: left; }
				@media screen and (max-width: 767px) {
						.p-menu__content .block1 .detail-title h5 {
								font-size: 6.0274vw; } }
		.p-menu__content .block1 .detail-title p {
				float: right;
				font-size: 1.14286vw;
				color: #818181;
				position: relative;
				padding-right: 0.7142vw; }
				@media screen and (max-width: 767px) {
						.p-menu__content .block1 .detail-title p {
								font-size: 4.38356vw; } }
				.p-menu__content .block1 .detail-title p span {
						display: block;
						padding-right: 3.1428vw;
						position: relative; }
						.p-menu__content .block1 .detail-title p span:before, .p-menu__content .block1 .detail-title p span:after {
								display: block;
								position: absolute;
								top: 50%;
								right: 0;
								content: "";
								border-top: 2px solid #302D39;
								-webkit-transition: 0.3s ease all;
								-moz-transition: 0.3s ease all;
								-ms-transition: 0.3s ease all;
								transition: 0.3s ease all;
								width: 1.9285vw; }
						.p-menu__content .block1 .detail-title p span:after {
								-webkit-transform: rotate(-90deg);
								-moz-transform: rotate(-90deg);
								transform: rotate(-90deg); }
		.p-menu__content .block1 .detail-title.is-open p span:after {
				-webkit-transform: rotate(0);
				-moz-transform: rotate(0);
				transform: rotate(0); }

.p-menu__content .block1 .detail {
		background: #E4E1DE;
		display: none; }
		.p-menu__content .block1 .detail table {
				width: 100%; }
		.p-menu__content .block1 .detail th,
		.p-menu__content .block1 .detail td {
				border-bottom: 1px solid #9B9BA1;
				padding: 1.8571vw 1.0714vw;
				font-size: 1vw;
				line-height: 160%;
				-webkit-box-sizing: border-box;
				-moz-box-sizing: border-box;
				box-sizing: border-box; }
				@media screen and (max-width: 767px) {
						.p-menu__content .block1 .detail th,
						.p-menu__content .block1 .detail td {
								font-size: 3.83562vw; } }
		.p-menu__content .block1 .detail tr:first-child th,
		.p-menu__content .block1 .detail tr:first-child td {
				border-top: 1px solid #9B9BA1; }
		.p-menu__content .block1 .detail th {
				font-weight: normal;
				text-align: left;
				color: #818181;
				vertical-align: top;
				width: 90px; }
		.p-menu__content .block1 .detail td .sup1,
		.p-menu__content .block1 .detail td .sup2 {
				color: #818181; }
		.p-menu__content .block1 .detail td .sup1 {
				margin-bottom: 0.3571vw; }
		.p-menu__content .block1 .detail td .sup2 {
				margin-top: 0.3571vw; }
		.p-menu__content .block1 .detail td li {
				margin-bottom: 0.1871vw;
				*zoom: 1; }
				.p-menu__content .block1 .detail td li:after {
						display: block;
						content: "";
						clear: both; }
				.p-menu__content .block1 .detail td li .title.hasPrice {
						float: left;
						width: calc(100% - 70px); }
				.p-menu__content .block1 .detail td li .itemsPrice {
						float: right;
						width: 70px;
						text-align: right; }

.p-menu__content .block1 .detail2 {
		clear: both;
		border-top: 1px solid #9B9BA1;
		border-bottom: 1px solid #9B9BA1;
		padding-top: 1.8571vw;
		padding-bottom: 1.8571vw; }
		.p-menu__content .block1 .detail2 li {
				margin-bottom: 0;
				font-size: 1vw;
				line-height: 180%; }
				@media screen and (max-width: 767px) {
						.p-menu__content .block1 .detail2 li {
								font-size: 3.83562vw; } }

.p-menu__content .block2 h4 {
		color: #8C6F54;
		font-size: 2vw;
		font-weight: normal;
		line-height: 150%;
		margin-bottom: 0.7142vw; }
		@media screen and (max-width: 767px) {
				.p-menu__content .block2 h4 {
						font-size: 7.67123vw; } }

.p-menu__content .block2 ul {
		margin-bottom: 5.7142vw; }

.p-menu__content .block2 li {
		padding-top: 2.1428vw;
		padding-bottom: 2.1428vw;
		border-bottom: 1px solid #9B9BA1;
		*zoom: 1; }
		.p-menu__content .block2 li:after {
				display: block;
				content: "";
				clear: both; }
		.p-menu__content .block2 li h5 {
				font-family: "Sourse Han Serif", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "リュウミン R-KL", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
				font-size: 1.42857vw;
				font-weight: 600;
				line-height: 140%; }
				@media screen and (max-width: 767px) {
						.p-menu__content .block2 li h5 {
								font-size: 5.47945vw; } }
				.p-menu__content .block2 li h5.hasPrice {
						float: left;
						width: calc(100% - 70px); }
		.p-menu__content .block2 li .price {
				float: right;
				width: 70px;
				text-align: right;
				font-size: 1.42857vw; }
				@media screen and (max-width: 767px) {
						.p-menu__content .block2 li .price {
								font-size: 5.47945vw; } }
		.p-menu__content .block2 li .sup {
				clear: both;
				padding-top: 1vw;
				color: #818181;
				font-size: 1vw;
				line-height: 150%; }
				@media screen and (max-width: 767px) {
						.p-menu__content .block2 li .sup {
								font-size: 3.83562vw; } }

/* ----------------------------- スマホ */
@media screen and (max-width: 767px) {
		.p-menu__content-wrap {
				padding-top: 15.6428vw;
				padding-bottom: 17.6428vw; }
		.p-menu__content-detail {
				float: none;
				width: auto; }
		.p-menu__content-img1 {
				float: none;
				width: 68vw;
				margin-bottom: 8vw;
				margin-left: auto;
				margin-right: auto; }
		.p-menu__content .wrap {
				width: 84vw;
				margin-left: auto;
				margin-right: auto; }
		.p-menu__content .heading h3 {
				font-size: 10.9589vw; }
		.p-menu__content .block1 li h4 {
				font-size: 1.42857vw; } }
		@media screen and (max-width: 767px) and (max-width: 767px) {
				.p-menu__content .block1 li h4 {
						font-size: 5.47945vw; } }

@media screen and (max-width: 767px) {
		.p-menu__content .block1 li .price {
				font-size: 1.14286vw; } }
		@media screen and (max-width: 767px) and (max-width: 767px) {
				.p-menu__content .block1 li .price {
						font-size: 4.38356vw; } }

@media screen and (max-width: 767px) {
		.p-menu__content .block1 .detail-title {
				padding-top: 4.6428vw;
				padding-bottom: 4.6428vw; }
				.p-menu__content .block1 .detail-title h5 {
						font-size: 4.93151vw; }
				.p-menu__content .block1 .detail-title p {
						font-size: 1vw; } }
				@media screen and (max-width: 767px) and (max-width: 767px) {
						.p-menu__content .block1 .detail-title p {
								font-size: 3.83562vw; } }

@media screen and (max-width: 767px) {
						.p-menu__content .block1 .detail-title p span {
								padding-right: 25px; }
								.p-menu__content .block1 .detail-title p span:before, .p-menu__content .block1 .detail-title p span:after {
										width: 15px; }
		.p-menu__content .block2 h4 {
				font-size: 1.57143vw; } }
		@media screen and (max-width: 767px) and (max-width: 767px) {
				.p-menu__content .block2 h4 {
						font-size: 6.0274vw; } }

@media screen and (max-width: 767px) {
		.p-menu__content .block2 ul {
				margin-bottom: 11.7142vw; }
		.p-menu__content .block2 li {
				padding-top: 5.1428vw;
				padding-bottom: 5.1428vw; }
				.p-menu__content .block2 li h5 {
						font-size: 1.28571vw; } }
				@media screen and (max-width: 767px) and (max-width: 767px) {
						.p-menu__content .block2 li h5 {
								font-size: 4.93151vw; } }

@media screen and (max-width: 767px) {
				.p-menu__content .block2 li .price {
						font-size: 1.14286vw; } }
				@media screen and (max-width: 767px) and (max-width: 767px) {
						.p-menu__content .block2 li .price {
								font-size: 4.38356vw; } }

@media screen and (max-width: 767px) {
				.p-menu__content .block2 li .sup {
						padding-top: 2vw; } }

/*=======================================
Contact/Reserve
=========================================*/
.p-contact__block1 {
		padding-left: 19vw; }
		.p-contact__block1 .lead {
				font-size: 1vw;
				line-height: 200%;
				margin-bottom: 7.1428vw;
				color: #818181; }
				@media screen and (max-width: 767px) {
						.p-contact__block1 .lead {
								font-size: 3.83562vw; } }
		.p-contact__block1 li {
				float: left;
				width: 33.3333%; }
				.p-contact__block1 li h4 {
						font-weight: normal;
						font-size: 1.14286vw;
						color: #818181;
						line-height: 150%;
						margin-bottom: 10px; }
						@media screen and (max-width: 767px) {
								.p-contact__block1 li h4 {
										font-size: 4.38356vw; } }
				.p-contact__block1 li p {
						font-size: 1.14286vw;
						line-height: 150%; }
						@media screen and (max-width: 767px) {
								.p-contact__block1 li p {
										font-size: 4.38356vw; } }
						.p-contact__block1 li p a {
								color: #302D39;
								text-decoration: none; }

/* ----------------------------- スマホ */
@media screen and (max-width: 767px) {
		.p-contact__block1 {
				padding-left: 0; }
				.p-contact__block1 li {
						float: none;
						width: auto;
						margin-bottom: 11vw; }
						.p-contact__block1 li h4 {
								margin-bottom: 4px; }
						.p-contact__block1 li.tel {
								width: 75vw;
								background-size: 32vw auto; } }

/*=======================================
Recruit
=========================================*/
.p-recruit__block1 {
		padding-left: 19vw; }
		.p-recruit__block1 .heading {
				margin-bottom: 7.5714vw; }
				.p-recruit__block1 .heading h3 {
						font-weight: 600;
						font-size: 1.42857vw;
						line-height: 160%;
						font-family: "Sourse Han Serif", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "リュウミン R-KL", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
						border-bottom: 1px solid #CDCDCD;
						padding-bottom: 2.5vw;
						margin-bottom: 2.1428vw; }
						@media screen and (max-width: 767px) {
								.p-recruit__block1 .heading h3 {
										font-size: 5.47945vw; } }
				.p-recruit__block1 .heading .share {
						font-size: 1vw;
						margin-bottom: 2.8571vw; }
						@media screen and (max-width: 767px) {
								.p-recruit__block1 .heading .share {
										font-size: 3.83562vw; } }
						.p-recruit__block1 .heading .share p, .p-recruit__block1 .heading .share ul, .p-recruit__block1 .heading .share li {
								display: inline-block;
								*display: inline;
								*zoom: 1;
								vertical-align: middle; }
						.p-recruit__block1 .heading .share p {
								margin-right: 2.7142vw; }
						.p-recruit__block1 .heading .share li {
								line-height: 100%;
								margin-right: 1.7857vw; }
								.p-recruit__block1 .heading .share li.facebook img {
										width: 10px; }
								.p-recruit__block1 .heading .share li.twitter img {
										width: 19px; }
				.p-recruit__block1 .heading .txt1 {
						line-height: 193%; }
		.p-recruit__block1 .content h3 {
				font-family: "Sourse Han Serif", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "リュウミン R-KL", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
				font-size: 1.42857vw;
				line-height: 160%;
				font-weight: 600;
				margin-bottom: 2vw; }
				@media screen and (max-width: 767px) {
						.p-recruit__block1 .content h3 {
								font-size: 5.47945vw; } }
		.p-recruit__block1 .content p {
				color: #818181;
				font-size: 1vw;
				line-height: 200%;
				margin-bottom: 3.5714vw; }
				@media screen and (max-width: 767px) {
						.p-recruit__block1 .content p {
								font-size: 3.83562vw; } }
				.p-recruit__block1 .content p a {
						color: #818181;
						text-decoration: none; }

/* ----------------------------- スマホ */
@media screen and (max-width: 767px) {
		.p-recruit__block1 {
				padding-left: 0; } }

/*=======================================
Privacy Policy
=========================================*/
.p-privacy__block1 {
		padding-left: 19vw; }
		.p-privacy__block1 .lead {
				color: #818181;
				line-height: 200%;
				font-size: 1vw;
				margin-bottom: 7.5vw; }
				@media screen and (max-width: 767px) {
						.p-privacy__block1 .lead {
								font-size: 3.83562vw; } }
		.p-privacy__block1 dt {
				font-family: "Sourse Han Serif", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "リュウミン R-KL", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
				font-size: 1.42857vw;
				line-height: 160%;
				font-weight: 600;
				margin-bottom: 2vw; }
				@media screen and (max-width: 767px) {
						.p-privacy__block1 dt {
								font-size: 5.47945vw; } }
		.p-privacy__block1 dd {
				color: #818181;
				font-size: 1vw;
				line-height: 200%;
				margin-bottom: 3.5714vw; }
				@media screen and (max-width: 767px) {
						.p-privacy__block1 dd {
								font-size: 3.83562vw; } }
				.p-privacy__block1 dd a {
						color: #818181;
						text-decoration: none; }
		.p-privacy__block1 li {
				text-indent: -1em;
				padding-left: 1em; }

/* ----------------------------- スマホ */
@media screen and (max-width: 767px) {
		.p-privacy__block1 {
				padding-left: 0; }
				.p-privacy__block1 .lead {
						margin-bottom: 10.5vw; }
				.p-privacy__block1 dd {
						margin-bottom: 8.5714vw; } }

/*=======================================
News/Blog
=========================================*/
.p-news__archive {
		padding-left: 19vw; }
		.p-news__archive-category {
				margin-bottom: 7.4285vw;
				font-weight: normal; }
				.p-news__archive-category li {
						display: inline-block;
						*display: inline;
						*zoom: 1;
						vertical-align: top;
						font-size: 1.28571vw;
						margin-right: 3.7142vw; }
						@media screen and (max-width: 767px) {
								.p-news__archive-category li {
										font-size: 4.93151vw; } }
						.p-news__archive-category li a {
								color: #a7a7a7;
								line-height: 160%;
								position: relative;
								text-decoration: none; }
								.p-news__archive-category li a:after {
										display: none;
										content: "";
										position: absolute;
										background-size: 8px 49px;
										width: 8px;
										height: 49px;
										left: 50%;
										margin-left: -4px;
										bottom: -55px; }
						.p-news__archive-category li.is-current a {
								color: #A1007D; }
								.p-news__archive-category li.is-current a:after {
										display: block; }
		.p-news__archive-block1 li a {
				display: block;
				border-bottom: 1px solid #CDCDCD;
				padding-top: 20px;
				padding-bottom: 24px;
				position: relative;
				text-decoration: none;
				padding-right: 84px;
				color: #302D39; }
				.p-news__archive-block1 li a .txt1 {
						margin-bottom: 15px;
						font-size: 1vw;
						font-weight: normal; }
						@media screen and (max-width: 767px) {
								.p-news__archive-block1 li a .txt1 {
										font-size: 3.83562vw; } }
						.p-news__archive-block1 li a .txt1 .date,
						.p-news__archive-block1 li a .txt1 .category {
								display: inline-block;
								*display: inline;
								*zoom: 1;
								vertical-align: middle; }
						.p-news__archive-block1 li a .txt1 .date {
								margin-right: 28px; }
						.p-news__archive-block1 li a .txt1 .category {
								color: #8C6F54; }
				.p-news__archive-block1 li a h3 {
						font-weight: 600;
						font-size: 1.42857vw;
						font-family: "Sourse Han Serif", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "リュウミン R-KL", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif; }
						@media screen and (max-width: 767px) {
								.p-news__archive-block1 li a h3 {
										font-size: 5.47945vw; } }
				.p-news__archive-block1 li a:before, .p-news__archive-block1 li a:after {
						display: block;
						content: "";
						position: absolute;
						-webkit-transition: 0.3s ease all;
						-moz-transition: 0.3s ease all;
						-ms-transition: 0.3s ease all;
						transition: 0.3s ease all; }
				.p-news__archive-block1 li a:before {
						width: 0;
						bottom: -1px;
						left: 0;
						border-bottom: 1px solid #A1007D; }
				.p-news__archive-block1 li a:after {
						width: 8px;
						height: 14px;
						right: 23px;
						top: 50%;
						-webkit-transform: translateY(-50%);
						-moz-transform: translateY(-50%);
						transform: translateY(-50%); }
				.p-news__archive-block1 li a:hover {
						opacity: 1;
						-ms-filter: "alpha(opacity=100)";
						filter: alpha(opacity=100); }
						.p-news__archive-block1 li a:hover:before {
								width: 100%; }
						.p-news__archive-block1 li a:hover:after {
								right: 8px; }

.p-news__detail {
		padding-left: 19vw; }
		.p-news__detail .heading {
				border-bottom: 1px solid #CDCDCD;
				padding-bottom: 24px;
				margin-bottom: 29px; }
				.p-news__detail .heading .txt1 {
						margin-bottom: 15px;
						font-size: 1vw;
						font-weight: normal; }
						@media screen and (max-width: 767px) {
								.p-news__detail .heading .txt1 {
										font-size: 3.83562vw; } }
						.p-news__detail .heading .txt1 .date,
						.p-news__detail .heading .txt1 .category {
								display: inline-block;
								*display: inline;
								*zoom: 1;
								vertical-align: middle; }
						.p-news__detail .heading .txt1 .date {
								margin-right: 28px; }
						.p-news__detail .heading .txt1 .category {
								color: #8C6F54; }
				.p-news__detail .heading h3 {
						font-weight: 600;
						font-size: 1.42857vw;
						font-family: "Sourse Han Serif", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "リュウミン R-KL", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif; }
						@media screen and (max-width: 767px) {
								.p-news__detail .heading h3 {
										font-size: 5.47945vw; } }
		.p-news__detail .share {
				font-size: 1vw;
				margin-bottom: 2.8571vw;
				font-weight: normal; }
				@media screen and (max-width: 767px) {
						.p-news__detail .share {
								font-size: 3.83562vw; } }
				.p-news__detail .share p, .p-news__detail .share ul, .p-news__detail .share li {
						display: inline-block;
						*display: inline;
						*zoom: 1;
						vertical-align: middle; }
				.p-news__detail .share p {
						margin-right: 2.7142vw; }
				.p-news__detail .share li {
						line-height: 100%;
						margin-right: 1.7857vw; }
						.p-news__detail .share li.facebook img {
								width: 10px; }
						.p-news__detail .share li.twitter img {
								width: 19px; }
		.p-news__detail .nav {
				border-top: 1px solid #CDCDCD;
				padding-top: 3vw;
				margin-top: 7.7142vw;
				font-weight: normal; }
				.p-news__detail .nav li {
						float: left;
						width: 33.3333%;
						font-size: 1vw; }
						@media screen and (max-width: 767px) {
								.p-news__detail .nav li {
										font-size: 3.83562vw; } }
						.p-news__detail .nav li a {
								display: inline-block;
								*display: inline;
								*zoom: 1;
								text-decoration: none;
								color: #302D39; }
						.p-news__detail .nav li span {
								background-repeat: no-repeat; }
						.p-news__detail .nav li.prev span {
								background-position: left center;
								background-size: 8px 15px;
								padding-left: 16px; }
						.p-news__detail .nav li.archive {
								text-align: center; }
								.p-news__detail .nav li.archive span {
										background-position: left center;
										background-size: 16px 16px;
										padding-left: 27px; }
						.p-news__detail .nav li.next {
								text-align: right; }
								.p-news__detail .nav li.next span {
										background-position: right center;
										background-size: 8px 15px;
										padding-right: 16px; }

/* ----------------------------- スマホ */
@media screen and (max-width: 767px) {
		.p-news__archive {
				padding-left: 0; }
				.p-news__archive-category {
						text-align: center;
						margin-bottom: 17.4285vw; }
						.p-news__archive-category li {
								font-size: 4.10959vw;
								margin-right: 8.7142vw; }
								.p-news__archive-category li:last-child {
										margin-right: 0; }
		.p-news__detail {
				padding-left: 0; }
				.p-news__detail .share {
						margin-bottom: 7.8571vw; }
				.p-news__detail .nav {
						padding-top: 8vw; }
						.p-news__detail .nav li {
								font-size: 3.28767vw; } }

/* ----------------------------- スマホ */
@media screen and (max-width: 767px) {
		body {
				font-size: 3.83562vw;
				line-height: 160%;
				min-width: initial; } }



.is-load02{
	display: none !important;
}