@charset "UTF-8";
/*
  Theme Name: NLP
  Theme URL: テーマのサイトのURI
  Description: テーマの説明
  Author: 作者の名前
  Version: テーマのバージョン
  Tags: テーマの特徴を表すタグ（カンマ区切り/オプション）
  License: テーマのライセンス
  License URI: テーマのライセンスのURI
  */
html {
		box-sizing: border-box;
		-ms-text-size-adjust: 100%;
		-webkit-text-size-adjust: 100%;
		/* アンチエイリアスを指定する */
		-webkit-font-smoothing: subpixel-antialiased;
		-moz-osx-font-smoothing: auto;
		/* メトリクスカーニングを指定する */
		font-kerning: normal;
		font-feature-settings: "palt";
		font-size: 62.5%;
}

*,
*:before,
*:after {
		box-sizing: inherit;
}

li > ul, li > ol {
		margin-bottom: 0;
}

dd {
		margin-left: 0;
}

table {
		width: 100%;
}

th {
		text-align: left;
}

img {
		max-width: 100%;
		height: auto;
		vertical-align: middle;
}

[src$=".svg"],
[data$=".svg"] {
		width: 100%;
}

i,
cite,
em,
address,
dfn {
		font-style: normal;
}

code,
pre {
		font-family: Consolas, Menlo, Courier, monospace;
}

code {
		padding: 0.2em;
		background-color: rgba(0, 0, 0, 0.06);
}

pre code {
		padding: 0;
		background-color: inherit;
}

h1, h2, h3, h4, h5, h6,
ul, ol, dl,
blockquote, p, address,
hr,
table,
fieldset, figure,
pre {
		margin-top: 0;
		margin-bottom: 0;
}

ul, li, dl, dt, dd {
		padding: 0;
		list-style-type: none;
}

body {
		margin: 0;
		font-size: 1.6em;
		font-family: "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "游ゴシック", YuGothic, "メイリオ", Meiryo, sans-serif;
		-webkit-font-smoothing: none;
		-webkit-font-smoothing: antialiased;
		-webkit-font-smoothing: subpixel-antialiased;
}

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

audio,
canvas,
progress,
video {
		display: inline-block;
		vertical-align: baseline;
}

audio:not([controls]) {
		display: none;
		height: 0;
}

[hidden],
template {
		display: none;
}

a {
		background-color: transparent;
		text-decoration: none;
		color: #000;
		display: block;
}

a:active,
a:focus,
a:hover {
		outline: 0;
		text-decoration: none;
}

abbr[title] {
		border-bottom: 1px dotted;
}

b,
strong {
		font-weight: bold;
}

dfn {
		font-style: italic;
}

h1 {
		font-size: 2em;
}

mark {
		background: #ff0;
		color: #000;
}

small {
		font-size: 80%;
}

sub,
sup {
		font-size: 75%;
		line-height: 0;
		position: relative;
		vertical-align: baseline;
}

sup {
		top: -0.5em;
}

sub {
		bottom: -0.25em;
}

img {
		border: 0;
}

svg:not(:root) {
		overflow: hidden;
}

figure {
		margin: auto;
}

hr {
		box-sizing: content-box;
		height: 0;
}

pre {
		overflow: auto;
}

code,
kbd,
pre,
samp {
		font-family: monospace, monospace;
		font-size: 1em;
}

button,
input,
optgroup,
select,
textarea {
		color: inherit;
		font: inherit;
		margin: 0;
		-webkit-appearance: none;
		-moz-appearance: none;
		appearance: none;
}

button {
		overflow: visible;
}

button,
select {
		text-transform: none;
}

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
		-webkit-appearance: button;
		cursor: pointer;
		-webkit-appearance: none;
		-moz-appearance: none;
		appearance: none;
}

button[disabled],
html input[disabled] {
		cursor: default;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
		border: 0;
		padding: 0;
}

input {
		line-height: normal;
}

input[type="checkbox"],
input[type="radio"] {
		box-sizing: border-box;
		padding: 0;
}

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
		height: auto;
}

input[type="search"] {
		-webkit-appearance: textfield;
		box-sizing: content-box;
}

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
		-webkit-appearance: none;
}

fieldset {
		border: 1px solid #c0c0c0;
		margin: 0 2px;
		padding: 0.35em 0.625em 0.75em;
}

legend {
		border: 0;
		padding: 0;
}

textarea {
		overflow: auto;
}

optgroup {
		font-weight: bold;
}

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

td,
th {
		padding: 0;
}

ul,
li,
p {
		list-style: none;
		padding: 0;
		margin: 0;
}

header {
		width: 100%;
		position: fixed;
		top: 0;
		left: 0%;
		z-index: 8;
		background: transparent;
		padding: 19px 0;
}

@media screen and (max-width: 768px) {
		header {
				padding: 8px 0;
		}
}

header .inner {
		max-width: 1160px;
		width: 100%;
		margin: 0 auto;
		display: flex;
		justify-content: space-between;
}

@media screen and (max-width: 768px) {
		header .inner {
				align-items: center;
		}
}

header h1 {
		max-width: 173px;
		width: 100%;
}

@media screen and (max-width: 768px) {
		header h1 {
				max-width: 120px;
				width: 100%;
				padding: 4px 0;
		}
}

header div.burger {
		display: none;
}

@media screen and (max-width: 768px) {
		header div.burger {
				display: block;
				width: 32px;
				height: 20px;
				cursor: pointer;
				transition: all 1000ms;
				z-index: 999;
				position: fixed;
				right: 24px;
				-webkit-transition: all 400ms ease-out;
				-moz-transition: all 400ms ease-out;
				-ms-transition: all 400ms ease-out;
				-o-transition: all 400ms ease-out;
				transition: all 400ms ease-out;
		}
}

@media screen and (max-width: 768px) {
		header div.burger.open {
				-ms-transform: rotate(133deg);
				-webkit-transform: rotate(133deg);
				transform: rotate(133deg);
		}
}

header div.burger.open .y {
		display: none;
}

header div.burger.open .x, header div.burger.open .z {
		background-color: #fff;
		width: 37px;
}

header div.burger.open .x {
		-ms-transform: rotate(90deg);
		-webkit-transform: rotate(90deg);
		transform: rotate(90deg);
}

header div.burger.open .z {
		-ms-transform: rotate(-180deg);
		-webkit-transform: rotate(-180deg);
		transform: rotate(-180deg);
		top: 0;
}

header div.x, header div.y, header div.z {
		position: absolute;
		margin: auto;
		width: 32px;
		height: 2px;
		background: #fff;
		-webkit-transition: all 200ms ease-out;
		-moz-transition: all 200ms ease-out;
		-ms-transition: all 200ms ease-out;
		-o-transition: all 200ms ease-out;
		transition: all 200ms ease-out;
}

@media screen and (max-width: 768px) {
		header div.x, header div.y, header div.z {
				width: 30px;
				height: 5px;
		}
}

header div.x {
		top: 0%;
}

header div.y {
		top: 50%;
}

header div.z {
		top: 100%;
}

header div.navbar {
		height: 73px;
}

header div.navbar.expand {
		width: 1200px;
		height: 1200px;
		top: -560px;
		left: -565px;
		-webkit-transition: all 400ms cubic-bezier(0, 0.995, 0.99, 1);
		-moz-transition: all 400ms cubic-bezier(0, 0.995, 0.99, 1);
		-ms-transition: all 400ms cubic-bezier(0, 0.995, 0.99, 1);
		-o-transition: all 400ms cubic-bezier(0, 0.995, 0.99, 1);
		transition: all 400ms cubic-bezier(0, 0.995, 0.99, 1);
}

header div.menu {
		max-width: 670px;
		width: 100%;
		display: flex;
		justify-content: space-between;
		align-items: center;
}

@media screen and (max-width: 768px) {
		header div.menu {
				height: 100vh;
				width: 100%;
				background-color: rgba(64, 95, 126, 0.9);
				position: fixed;
				top: 0px;
				right: -100%;
				text-align: center;
				transition: all 1000ms;
				z-index: 99;
				-webkit-transition: all 700ms cubic-bezier(0, 0.995, 0.99, 1);
				-moz-transition: all 700ms cubic-bezier(0, 0.995, 0.99, 1);
				-ms-transition: all 700ms cubic-bezier(0, 0.995, 0.99, 1);
				-o-transition: all 700ms cubic-bezier(0, 0.995, 0.99, 1);
				transition: all 700ms cubic-bezier(0, 0.995, 0.99, 1);
				flex-direction: column;
		}
}

header div.menu.open {
		right: 0;
		padding-top: 60px;
		padding-bottom: 40px;
		overflow-y: scroll;
}

header div.menu nav {
		width: 100%;
		display: flex;
		justify-content: space-between;
}

@media screen and (max-width: 768px) {
		header div.menu nav {
				flex-direction: column;
		}
}

header div.menu nav .gnav {
		width: 88%;
}

@media screen and (max-width: 768px) {
		header div.menu nav .gnav {
				width: 100%;
		}
}

header div.menu nav .lang {
		width: 8%;
		justify-content: center;
}

@media screen and (max-width: 768px) {
		header div.menu nav .lang {
				width: 100%;
				flex-direction: row !important;
				justify-content: center;
		}
}

header div.menu nav .lang li {
		display: flex;
}

@media screen and (max-width: 768px) {
		header div.menu nav .lang li {
				gap: 4px;
		}
}

header div.menu nav .lang li:not(:last-child):after {
		content: "/";
		display: block;
		margin-top: -5px;
		color: #fff;
		margin-right: 4px;
}

@media screen and (max-width: 768px) {
		header div.menu nav .lang li:not(:last-child):after {
				margin-right: 4px;
				margin-top: -2px;
		}
}

header div.menu nav ul {
		display: flex;
		flex-direction: row;
		justify-content: space-between;
		overflow: inherit;
}

@media screen and (max-width: 768px) {
		header div.menu nav ul {
				flex-direction: column;
		}
}

header div.menu nav ul > li {
		list-style: none;
		text-align: center;
		font-weight: 400;
		position: relative;
		font-family: 'Optima','Roman',sans-serif;
		font-size: 1.4rem;
}

@media screen and (max-width: 768px) {
		header div.menu nav ul li {
				margin-top: 40px;
				font-size: 2rem;
		}
}

header div.menu nav ul li a {
		color: #fff;
		text-decoration: none;
		letter-spacing: 3px;
}

@media screen and (max-width: 768px) {
		header div.menu nav ul li a {
				letter-spacing: 0;
				color: #fff;
		}
}

header div.menu nav ul li a:hover {
		color: #000000;
}

header div.menu nav ul li a span {
		display: block;
}

header div.menu nav ul li a .en {
		font-family: "Optima", "Roman", sans-serif;
		font-weight: 400;
		font-size: 1.4rem;
		letter-spacing: 0.1em;
}

@media screen and (max-width: 768px) {
		header div.menu nav ul li a .en {
				font-size: 2rem;
		}
}

header div.menu nav ul .has-child:hover .sub-menu {
		visibility: visible;
		opacity: 1;
}

header div.menu nav ul .has-child:active .sub-menu {
		visibility: visible;
		opacity: 1;
}

header div.menu nav ul .has-child .sub-menu {
		position: absolute;
		display: block;
		font-size: 1.2rem;
		left: 0;
		top: 22px;
		z-index: 4;
		width: 190px;
		/*はじめは非表示*/
		visibility: hidden;
		opacity: 0;
		/*アニメーション設定*/
		transition: all .3s;
}

@media screen and (max-width: 768px) {
		header div.menu nav ul .has-child .sub-menu {
				position: relative;
				display: none;
				top: 0;
				transition: none;
				width: 100%;
				background-color: transparent;
		}
}

header div.menu nav ul .has-child .sub-menu li {
		text-align: left;
		line-height: 1.4;
		font-size: 1.2rem;
		font-family: "Noto Serif JP", serif;
}

@media screen and (max-width: 768px) {
		header div.menu nav ul .has-child .sub-menu li {
				text-align: center;
				margin-top: 8px;
		}
}

.page header {
		background-color: rgba(255, 255, 255, 0.8);
}

.page header .x, .page header .y, .page header .z {
		background: #000;
}

.page header .inner .menu nav .lang li:not(:last-child):after {
		color: #4B158A;
}

@media screen and (max-width: 768px) {
		.page header .inner .menu nav .lang li:not(:last-child):after{
				color: #fff;
		}
}

.page header .inner .menu nav ul li a {
		color: #4B158A;
}

@media screen and (max-width: 768px) {
		.page header .inner .menu nav ul li a {
				color: #fff;
		}
}

.page header .inner .menu nav ul .has-child .sub-menu {
		background-color: #fff;
}

@media screen and (max-width: 768px) {
		.page header .inner .menu nav ul .has-child .sub-menu {
				background-color: transparent;
		}
}

.page header .inner .menu nav ul .has-child .sub-menu li {
		background-color: transparent;
}

footer {
		text-align: center;
		margin-top: 91px;
		background-color: #5D5D5D;
		padding: 33px 0 0;
		width: 100%;
}

@media screen and (max-width: 768px) {
		footer {
				padding: 24px 0px 0px;
				margin-top: 40px;
		}
}

footer h2 {
		max-width: 136px;
		width: 100%;
		margin: 0 auto;
}

@media screen and (max-width: 768px) {
		footer h2 {
				max-width: 70px;
		}
}

footer > ul.footer_nav1 {
		max-width: 702px;
		width: 100%;
		margin: 71px auto 0;
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
}

@media screen and (max-width: 768px) {
		footer > ul.footer_nav1 {
				margin-top: 40px;
				padding: 0 18px;
		}
}

footer > ul.footer_nav1 > li {
		font-size: 1.4rem;
		font-family: "Marcellus", serif;
		font-weight: 400;
		width: 28.77%;
		text-align: left;
}

@media screen and (max-width: 768px) {
		footer > ul.footer_nav1 > li {
				font-size: 1.2rem;
		}
}

footer > ul.footer_nav1 > li:nth-child(n+4) {
		margin-top: 34px;
}

@media screen and (max-width: 768px) {
		footer > ul.footer_nav1 > li:nth-child(n+4) {
				margin-top: 24px;
		}
}

footer > ul.footer_nav1 > li > a {
		color: #fff;
		border-bottom: 1px solid #fff;
		padding-bottom: 6px;
}

footer > ul.footer_nav1 > li > a:hover {
		opacity: .6;
}

footer > ul.footer_nav1 > li .sub-menu {
		font-family: "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "MS PMincho", sans-serif;
		font-weight: 100;
		font-size: 1.3rem;
		margin-top: 12px;
}

@media screen and (max-width: 768px) {
		footer > ul.footer_nav1 > li .sub-menu {
				font-size: 1.1rem;
				margin-top: 6px;
		}
}

footer > ul.footer_nav1 > li .sub-menu li a {
		color: #fff;
}

footer > ul.footer_nav1 > li .sub-menu li:not(:first-child) {
		margin-top: 9px;
}

@media screen and (max-width: 768px) {
		footer > ul.footer_nav1 > li .sub-menu li:not(:first-child) {
				margin-top: 4px;
		}
}

footer ul.footer_nav2 {
		margin: 67px auto 0;
		display: flex;
		flex-direction: row;
		justify-content: space-between;
		flex-wrap: none;
		max-width: 702px;
		width: 100%;
}

@media screen and (max-width: 768px) {
		footer ul.footer_nav2 {
				margin-top: 40px;
				padding: 0 18px;
				flex-direction: column;
				width: 60%;
		}
}

footer ul.footer_nav2 li {
		display: inline-block;
		border-bottom: 1px solid #fff;
		font-size: 1.4rem;
}

@media screen and (max-width: 768px) {
		footer ul.footer_nav2 li {
				font-size: 1rem;
				border-bottom: none;
		}
		footer ul.footer_nav2 li:not(:first-child) {
				margin-top: 8px;
		}
}

footer ul.footer_nav2 li a {
		color: #fff;
}

@media screen and (max-width: 768px) {
		footer ul.footer_nav2 li a {
				text-decoration: underline;
		}
}

footer .copy_r {
		font-family: "Marcellus", serif;
		font-weight: 400;
		font-size: 1.4rem;
		margin-top: 80px;
		color: #8E8E8E;
		background-color: #fff;
		padding: 8px 0 23px;
}

@media screen and (max-width: 768px) {
		footer .copy_r {
				margin-top: 40px;
				font-size: 1rem;
		}
}

img {
		max-width: 100%;
		height: auto;
		vertical-align: middle;
}

ul {
		overflow: hidden;
}

a {
		transition: all .8s;
}

a:hover {
		text-decoration: none !important;
}

.sp {
		display: none !important;
}

@media screen and (max-width: 768px) {
		.sp {
				display: block !important;
		}
}

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

#page-top {
		position: fixed;
		right: 40px;
		bottom: 20px;
		font-size: 1.2rem;
		color: #63328E;
		border-top: 4px solid #63328E;
		padding-top: 4px;
		cursor: pointer;
}

@media screen and (max-width: 768px) {
		#page-top {
				right: 16px;
				bottom: 16px;
		}
}

#page-top a:hover {
		opacity: 0.6;
		text-decoration: none;
}

/* Loading背景画面設定　*/
/* Loadingバー中央配置　*/
/*IE11対策用バーの線の高さ※対応しなければ削除してください*/
/* fadeDown */
/* smooth */
/* スクロールをしたら出現する要素にはじめに透過0を指定　 */
/*========= ローディング画面のためのCSS =============== */
#splash {
		position: fixed;
		width: 100%;
		height: 100%;
		background: #63328E;
		z-index: 9999999;
		text-align: center;
		color: #fff;
}
#splash_top {
	top: 0;
	left: 0;
	position: fixed;
	width: 100%;
	height: 100%;
	background: #63328E;
	z-index: 9999999;
	text-align: center;
	color: #fff;
}


#splash-logo {
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
		font-size: 1.2rem;
		letter-spacing: 0.2em;
		max-width: 120px;
		width: 100%;
}

/*========= 画面遷移のためのCSS =============== */
/*画面遷移アニメーション */
.splashbg1, .splashbg2 {
		display: none;
}
.splashbg3, .splashbg4 {
	display: block;
}

/*bodyにappearクラスがついたら出現 */
body.appear .splashbg1, body.appear .splashbg2 {
		display: block;
}

body.appear .splashbg1 {
		animation-name: PageAnime;
		animation-duration: 1.4s;
		animation-timing-function: ease-in-out;
		animation-fill-mode: forwards;
		content: "";
		position: fixed;
		z-index: 999;
		width: 100%;
		height: 100vh;
		bottom: 50%;
		left: 0;
		transform: scaleY(1);
		background-color: #63328E;
		/*伸びる背景色の設定 */
}

body.appear .splashbg2 {
		animation-name: PageAnime2;
		animation-duration: 1.4s;
		animation-timing-function: ease-in-out;
		animation-fill-mode: forwards;
		content: "";
		position: fixed;
		z-index: 999;
		width: 100%;
		height: 100vh;
		top: 50%;
		left: 0;
		transform: scaleY(1);
		background-color: #63328E;
		/*伸びる背景色の設定 */
}

body.appear .splashbg3 {
	animation-name: PageAnime;
	animation-duration: 1s;
	animation-timing-function: ease-in-out;
	animation-fill-mode: forwards;
	content: "";
	position: fixed;
	z-index: 999;
	width: 100%;
	height: 100vh;
	bottom: 50%;
	left: 0;
	transform: scaleY(1);
	background-color: #63328E;
	/*伸びる背景色の設定 */
}

body.appear .splashbg4 {
	animation-name: PageAnime2;
	animation-duration: 1s;
	animation-timing-function: ease-in-out;
	animation-fill-mode: forwards;
	content: "";
	position: fixed;
	z-index: 999;
	width: 100%;
	height: 100vh;
	top: 50%;
	left: 0;
	transform: scaleY(1);
	background-color: #63328E;
	/*伸びる背景色の設定 */
}

/*上に消えるエリア */
@keyframes PageAnime {
		0% {
				transform-origin: top;
				transform: scaleY(1);
		}
		100% {
				transform-origin: top;
				transform: scaleY(0);
		}
}

/*下に消えるエリア */
@keyframes PageAnime2 {
		0% {
				transform-origin: bottom;
				transform: scaleY(1);
		}
		100% {
				transform-origin: bottom;
				transform: scaleY(0);
		}
}

/*画面遷移の後現れるコンテンツ設定 */
#wrapper {
		opacity: 0;
		/*はじめは透過0に */
		position: relative;
		z-index: 1;
}

/*bodyにappearクラスがついたら出現 */
body.appear #wrapper {
		animation-name: PageAnimeAppear;
		animation-duration: 1s;
		animation-delay: 0.2s;
		animation-fill-mode: forwards;
		opacity: 0;
}

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

.fadeUp {
		animation-name: fadeUpAnime;
		animation-duration: 0.5s;
		animation-fill-mode: forwards;
		opacity: 0;
}

@keyframes fadeUpAnime {
		from {
				opacity: 0;
				transform: translateY(100px);
		}
		to {
				opacity: 1;
				transform: translateY(0);
		}
}

.fadeLeft {
		animation-name: fadeLeftAnime;
		animation-duration: 0.5s;
		animation-fill-mode: forwards;
		opacity: 0;
}

@keyframes fadeLeftAnime {
		from {
				opacity: 0;
				transform: translateX(-100px);
		}
		to {
				opacity: 1;
				transform: translateX(0);
		}
}

.fadeRight {
		animation-name: fadeRightAnime;
		animation-duration: 0.5s;
		animation-fill-mode: forwards;
		opacity: 0;
}

@keyframes fadeRightAnime {
		from {
				opacity: 0;
				transform: translateX(100px);
		}
		to {
				opacity: 1;
				transform: translateX(0);
		}
}

.fadeLeftTrigger {
		opacity: 0;
}

.fadeRightTrigger {
		opacity: 0;
}

body {
		font-family: "Noto Serif JP", serif;
}

.is-fixed {
		position: fixed;
		top: 0;
		left: 0;
		z-index: 2;
		width: 100%;
		background-color: #fff;
}

.is-hide {
		transform: translateY(-100%);
}

.fadein {
		opacity: 0;
		-webkit-transform: translate(0, 120px);
		-webkit-transform-transform: translate(0, 120px);
		-webkit-transition: all 1000ms;
		transition: all 1000ms;
}

.fadein2 {
		opacity: 0;
		-webkit-transform: translate(0, 120px) rotate(10deg);
		transform: translate(0, 120px) rotate(10deg);
		-webkit-transition: all 1000ms;
		transition: all 1000ms;
}

.fadein.scrollin {
		opacity: 1;
		-webkit-transform: translate(0, 0);
		-webkit-transform-transform: translate(0, 0);
}

.fadein2.scrollin {
		opacity: 1;
		-webkit-transform: translate(0, 0) rotate(0deg);
		-webkit-transform-transform: translate(0, 0) rotate(0deg);
}

li.scrollin {
		opacity: 1 !important;
		-webkit-transform: translate(0, 0) !important;
		-webkit-transform-transform: translate(0, 0) !important;
}

.scrolldown1 {
		position: absolute;
		right: 40px;
		bottom: 14%;
		height: 50px;
		z-index: 9;
}

.scrolldown1 span {
		position: absolute;
		left: -15px;
		top: -15px;
		color: #eee;
		font-size: 1rem;
		letter-spacing: 0.05em;
}

.scrolldown1::after {
		content: '';
		/*描画位置*/
		position: absolute;
		top: 0;
		/*線の形状*/
		width: 1px;
		height: 30px;
		background: #eee;
		/*線の動き1.4秒かけて動く。永遠にループ*/
		animation: pathmove 1.4s ease-in-out infinite;
		opacity: 0;
}

@keyframes pathmove {
		0% {
				height: 0;
				top: 0;
				opacity: 0;
		}
		30% {
				height: 30px;
				opacity: 1;
		}
		100% {
				height: 0;
				top: 50px;
				opacity: 0;
		}
}

.cell.is-empty {
		height: 0;
		padding-top: 0 !important;
		padding-bottom: 0;
		margin-top: 0 !important;
		margin-bottom: 0;
}

.slick-dots {
		bottom: 24px;
}

.slick-dots li.slick-active button:before {
		color: #fff;
}

.slick-dots li button:before {
		color: #fff;
}

.slick-dotted.slick-slider {
		margin-bottom: 0;
}

.tab {
		display: flex;
		justify-content: center;
}

.tab li {
		display: flex;
		font-size: 2rem;
}

@media screen and (max-width: 768px) {
		.tab li {
				font-size: 1.4rem;
		}
}

.tab li:first-child::after {
		content: "";
		width: 1px;
		height: 25px;
		display: block;
		transform: rotate(45deg);
		background-color: #707070;
		margin: 0 14px;
}

@media screen and (max-width: 768px) {
		.tab li:first-child::after {
				height: 21px;
		}
}

.tab li a {
		color: #000000;
}

.tab .active a {
		color: #4B158A;
		text-decoration: underline;
}

.tabContents {
		display: none;
}

.tabContents.active {
		display: block;
}

.parallax-window {
		min-height: 400px;
		background: transparent;
}

.btn {
		font-family: "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "MS PMincho", sans-serif;
		font-size: 1.6rem;
		font-weight: 400;
		border: 1px solid #000000;
		border-radius: 15px;
		max-width: 196px;
		width: 100%;
		padding: 4px 0;
		text-align: center;
		line-height: 1;
		transition: all .6s;
		background-color: #fff;
}

.btn:hover {
		background-color: #000;
}

.btn:hover a {
		color: #fff;
}

.btn a {
		display: block;
}

.navigation {
		margin-top: 40px;
}

.navigation h2 {
		display: none;
}

.navigation .nav-links {
		display: flex;
		justify-content: center;
		font-size: 1.8rem;
}

.navigation .nav-links .current {
		color: #4B158A;
		margin-right: 8px;
}

.navigation .nav-links a {
		margin-right: 8px;
}

.navigation .nav-links .next {
		display: none;
}

.post-navigation .nav-links {
		justify-content: space-around;
}

.post-navigation .nav-links li {
		display: flex;
}

.post-navigation .nav-links li a {
		transition: all .6s;
		margin-left: 8px;
}

.post-navigation .nav-links li a:hover {
		color: #4B158A;
}

.post-navigation .nav-links .nav-next {
		margin-top: 0 !important;
}

.post-navigation .nav-links .nav-previous {
		margin-top: 0 !important;
}

figure {
		margin: 0;
}

main {
		overflow-x: hidden;
}

.page-template-page-top .main_visual {
		position: relative;
}

.page-template-page-top .main_visual .slickslider {
		width: 100%;
		position: relative;
}

.page-template-page-top .main_visual .slickslider .slider .slick-slide figure {
		position: relative;
}

.page-template-page-top .main_visual .slickslider .slider .slick-slide figure img {
		width: 100%;
}

.page-template-page-top .main_visual .slickslider .slider .slick-slide figure figcaption {
		position: absolute;
		max-width: 1080px;
		width: 100%;
		left: 50%;
		transform: translate(-50%, 0%);
		color: #fff;
		font-family: "Noto Serif JP", serif;
		font-weight: 400;
		font-size: 3rem;
		letter-spacing: 0.3em;
		line-height: 2;
}

@media screen and (max-width: 768px) {
		.page-template-page-top .main_visual .slickslider .slider .slick-slide figure figcaption {
				font-size: 1.8rem;
				padding: 0 16px;
		}
}

.page-template-page-top .main_visual .slickslider .slider .slick-slide:first-child figure figcaption {
		max-width: 223px;
		width: 100%;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
}

.page-template-page-top .main_visual .slickslider .slider .slick-slide:nth-child(2) figure figcaption, .page-template-page-top .main_visual .slickslider .slider .slick-slide:nth-child(3) figure figcaption {
		top: 231px;
}

.page-template-page-top .main_visual .slickslider .slider .slick-slide:nth-child(4) figure figcaption, .page-template-page-top .main_visual .slickslider .slider .slick-slide:nth-child(5) figure figcaption {
		bottom: 96px;
}

.page-template-page-top .main_visual .btnarea {
		max-width: 750px;
		width: 100%;
		margin: 17px auto 0;
}

.page-template-page-top .main_visual .news {
		max-width: 750px;
		width: 100%;
		margin: 17px auto 0;
		font-family: "Noto Sans JP", sans-serif;
		font-weight: 400;
		font-size: 1.5rem;
		display: flex;
		justify-content: flex-start;
		align-items: flex-start;
		color: #3c3c3c;
		letter-spacing: 0.1em;
}

@media screen and (max-width: 768px) {
		.page-template-page-top .main_visual .news {
				font-size: 1.3rem;
				padding: 0 16px;
		}
}

.page-template-page-top .main_visual .news a {
		/* display: flex; */
		color: #3c3c3c;
}

.page-template-page-top .main_visual .news p time {
		font-family: "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "MS PMincho", sans-serif;
}

.page-template-page-top .main_visual .news .time {
		margin-right: 1em;
}

.page-template-page-top .main_visual .news .text p {
		font-weight: 400;
		font-size: 1.5rem;
		letter-spacing: 0.1em;
}

@media screen and (max-width: 768px) {
		.page-template-page-top .main_visual .news .text p {
				font-size: 1.3rem;
		}
}

.page-template-page-top .main_visual .news h2 {
		margin-left: 22px;
		font-weight: 400;
		font-size: 1.5rem;
		letter-spacing: 0.1em;
}

@media screen and (max-width: 768px) {
		.page-template-page-top .main_visual .news h2 {
				font-size: 1.3rem;
		}
}

.page-template-page-top .top_what {
		margin-top: 84px;
		text-align: center;
}

.page-template-page-top .top_what .ttl {
		font-family: "Marcellus", serif;
		font-weight: 400;
		font-size: 4.3rem;
		letter-spacing: 0.1em;
		color: #3c3c3c;
}

@media screen and (max-width: 768px) {
		.page-template-page-top .top_what .ttl {
				font-size: 2.7rem;
				border-bottom: 1px solid #3C3C3C;
				padding-bottom: 2px;
				display: inline-block;
		}
}

.page-template-page-top .top_what .inner {
		color: #1F1F1F;
		margin-top: 60px;
}

@media screen and (max-width: 768px) {
		.page-template-page-top .top_what .inner {
				margin-top: 46px;
		}
}

.page-template-page-top .top_what .inner p {
		line-height: 2.125;
		font-size: 1.6rem;
		font-family: "Noto Serif JP", serif;
		font-weight: 400;
		margin-top: 1em;
}

@media screen and (max-width: 768px) {
		.page-template-page-top .top_what .inner p {
				font-size: 1.4rem;
		}
}

.page-template-page-top .top_what .inner figure {
		max-width: 323px;
		width: 100%;
		margin: 40px auto 40px;
}

@media screen and (max-width: 768px) {
		.page-template-page-top .top_what .inner figure {
				max-width: 272px;
				margin-top: 24px auto;
		}
}

.page-template-page-top .top_mission {
		margin-top: 132px;
}

@media screen and (max-width: 768px) {
		.page-template-page-top .top_mission {
				margin-top: 70px;
		}
}

.page-template-page-top .top_mission .inner {
		display: flex;
		justify-content: flex-end;
		align-items: center;
}

@media screen and (max-width: 768px) {
		.page-template-page-top .top_mission .inner {
				flex-direction: column;
				justify-content: flex-start;
		}
}

.page-template-page-top .top_mission .inner .inner_text {
		background-color: rgba(142, 142, 142, 0.08);
		padding: 55px 69px 55px 40px;
}

@media screen and (max-width: 768px) {
		.page-template-page-top .top_mission .inner .inner_text {
				padding: 39px 18px 178px;
		}
}

.page-template-page-top .top_mission .inner .inner_text .ttl {
		font-family: "Marcellus", serif;
		font-weight: 400;
		font-size: 3.8rem;
		letter-spacing: 0.12em;
}

@media screen and (max-width: 768px) {
		.page-template-page-top .top_mission .inner .inner_text .ttl {
				font-size: 2.1rem;
		}
}

.page-template-page-top .top_mission .inner .inner_text .text {
		margin-top: 45px;
		max-width: 450px;
		width: 100%;
		font-size: 1.5rem;
		font-family: "Noto Sans JP", sans-serif;
		font-weight: 400;
		letter-spacing: 0.16em;
		line-height: 2.1;
}

@media screen and (max-width: 768px) {
		.page-template-page-top .top_mission .inner .inner_text .text {
				font-size: 1.3rem;
		}
}

.page-template-page-top .top_mission .inner .inner_text .btn {
		margin-top: 81px;
}

@media screen and (max-width: 768px) {
		.page-template-page-top .top_mission .inner .inner_text .btn {
				margin-top: 35px;
				font-size: 1.1rem;
		}
}

.page-template-page-top .top_mission .inner figure {
		max-width: 666px;
		width: 100%;
}

@media screen and (max-width: 768px) {
		.page-template-page-top .top_mission .inner figure {
				max-width: 236px;
				margin-left: auto;
				margin-top: -120px;
		}
}

.page-template-page-top .top_bg_01 {
		margin-top: 141px;
}

@media screen and (max-width: 768px) {
		.page-template-page-top .top_bg_01 {
				margin-top: 64px;
		}
}

.page-template-page-top .top_about {
		max-width: 1110px;
		width: 100%;
		margin: 75px auto 0;
		text-align: center;
}

@media screen and (max-width: 768px) {
		.page-template-page-top .top_about {
				margin-top: 44px;
		}
}

.page-template-page-top .top_about .ttl {
		font-family: "Marcellus", serif;
		font-weight: 400;
		font-size: 3.8rem;
		letter-spacing: 0.1em;
}

@media screen and (max-width: 768px) {
		.page-template-page-top .top_about .ttl {
				font-size: 2.7rem;
				border-bottom: 1px solid #3C3C3C;
				padding-bottom: 2px;
				display: inline-block;
		}
}

.page-template-page-top .top_about .inner {
		margin-top: 45px;
}

@media screen and (max-width: 768px) {
		.page-template-page-top .top_about .inner {
				margin-top: 39px;
		}
}

.page-template-page-top .top_about .inner .text {
		margin-top: 45px;
		font-size: 1.5rem;
		font-family: "Noto Sans JP", sans-serif;
		font-weight: 400;
		letter-spacing: 0.16em;
		line-height: 2.1;
		padding: 0 16px;
}

@media screen and (max-width: 768px) {
		.page-template-page-top .top_about .inner .text {
				font-size: 1.3rem;
				padding: 0 16px;
		}
}

.page-template-page-top .top_about .inner .btn {
		margin: 64px auto 0;
}

@media screen and (max-width: 768px) {
		.page-template-page-top .top_about .inner .btn {
				margin-top: 36px;
				width: 148px;
				font-size: 1.1rem;
		}
}

.page-template-page-top .top_about .inner figure {
		max-width: 319px;
		width: 100%;
		margin-top: 64px;
}

@media screen and (max-width: 768px) {
		.page-template-page-top .top_about .inner figure {
				max-width: 205px;
		}
}

.page-template-page-top .top_profile {
		max-width: 1080px;
		width: 100%;
		margin: 132px auto 0;
}

@media screen and (max-width: 768px) {
		.page-template-page-top .top_profile {
				margin-top: 60px;
		}
}

.page-template-page-top .top_profile .inner {
		max-width: 1017px;
		width: 100%;
		display: flex;
		justify-content: space-between;
		gap: 24px;
}

.page-template-page-top .top_profile .inner figure {
		width: 64.2%;
}

@media screen and (max-width: 768px) {
		.page-template-page-top .top_profile .inner figure {
				width: 57%;
		}
}

.page-template-page-top .top_profile .inner .inner_text {
		display: flex;
		flex-direction: column;
		justify-content: space-between;
}

.page-template-page-top .top_profile .inner .inner_text dl {
		-ms-writing-mode: tb-rl;
		writing-mode: vertical-rl;
		font-family: "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "MS PMincho", sans-serif;
		font-size: 1.4rem;
		font-weight: 400;
		margin-right: 42px;
}

@media screen and (max-width: 768px) {
		.page-template-page-top .top_profile .inner .inner_text dl {
				font-size: 1.1rem;
				margin-right: 33px;
		}
}

.page-template-page-top .top_profile .inner .inner_text dl dt {
		letter-spacing: 0.2em;
}

.page-template-page-top .top_profile .inner .inner_text dl dd {
		margin-top: 0;
}

.page-template-page-top .top_profile .inner .inner_text dl dd .name_ja {
		font-size: 4rem;
		letter-spacing: 0.6em;
}

@media screen and (max-width: 768px) {
		.page-template-page-top .top_profile .inner .inner_text dl dd .name_ja {
				font-size: 2.4rem;
				padding: 0 22px;
				display: block;
		}
}

.page-template-page-top .top_profile .inner .inner_text dl dd .name_en {
		font-family: "Optima", "Roman", sans-serif;
		display: block;
		letter-spacing: 0.2em;
}

.page-template-page-top .top_profile .btn {
		width: 148px;
		font-size: 1.1rem;
		margin: 44px auto 0;
}

.page-template-page-top .top_service {
		margin-top: 134px;
		padding: 67px 0 52px;
		background: #f6f6f6;
		background: -moz-linear-gradient(left, #f6f6f6 0%, #f6f6f6 80%, #ffffff 80%, #ffffff 100%);
		background: -webkit-linear-gradient(left, #f6f6f6 0%, #f6f6f6 80%, #ffffff 80%, #ffffff 100%);
		background: linear-gradient(to right, #f6f6f6 0%, #f6f6f6 80%, #ffffff 80%, #ffffff 100%);
		filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f6f6f6', endColorstr='#ffffff',GradientType=1 );
}

@media screen and (max-width: 768px) {
		.page-template-page-top .top_service {
				margin-top: 53px;
				background: #f6f6f6;
				padding: 42px 0px 40px;
		}
}

.page-template-page-top .top_service .inner {
		max-width: 1180px;
		width: 100%;
		margin-left: auto;
		display: flex;
		justify-content: space-between;
}

@media screen and (max-width: 768px) {
		.page-template-page-top .top_service .inner {
				flex-direction: column;
		}
}

@media screen and (max-width: 768px) {
		.page-template-page-top .top_service .inner .inner_text {
				padding: 0 18px;
		}
}

.page-template-page-top .top_service .inner .inner_text .ttl {
		font-family: "Marcellus", serif;
		font-weight: 400;
		font-size: 3.8rem;
		letter-spacing: 0.12em;
		color: #3c3c3c;
}

@media screen and (max-width: 768px) {
		.page-template-page-top .top_service .inner .inner_text .ttl {
				font-size: 2.1rem;
		}
}

.page-template-page-top .top_service .inner .inner_text h3 {
		width: 80%;
		margin: 12px 0;
		font-size: 1.6rem;
		font-family: "Noto Sans JP", sans-serif;
		font-weight: 400;
}

@media screen and (max-width: 768px) {
		.page-template-page-top .top_service .inner .inner_text h3 {
				width: 100%;
				font-size: 1.3rem;
		}
}

.page-template-page-top .top_service .inner .inner_text .top_service_list {
		margin-top: 40px;
}

.page-template-page-top .top_service .inner .inner_text .top_service_list li {
		font-family: "Noto Sans JP", sans-serif;
		font-weight: 400;
		font-size: 1.5rem;
		line-height: 2.13;
		color: #1F1F1F;
}

@media screen and (max-width: 768px) {
		.page-template-page-top .top_service .inner .inner_text .top_service_list li {
				font-size: 1.3rem;
		}
}

.page-template-page-top .top_service .inner .inner_text .btn_group {
		margin-top: 52px;
		display: flex;
		justify-content: flex-start;
}

@media screen and (max-width: 768px) {
		.page-template-page-top .top_service .inner .inner_text .btn_group {
				justify-content: center;
		}
}

.page-template-page-top .top_service .inner .inner_text .btn_group .btn {
		width: 196px;
		display: flex;
		justify-content: center;
		align-items: center;
}

@media screen and (max-width: 768px) {
		.page-template-page-top .top_service .inner .inner_text .btn_group .btn {
				font-size: 1.1rem;
				width: 146px;
		}
}

.page-template-page-top .top_service .inner .inner_text .btn_group .btn:first-child {
		margin-right: 10px;
}

.page-template-page-top .top_service .inner .inner_text p {
		margin-top: 40px;
		font-size: 1.3rem;
		font-family: "Noto Serif JP", serif;
		font-weight: 400;
		text-align: left;
}

.page-template-page-top .top_service .inner .inner_text .btn_2 {
		font-family: "Noto Serif JP", serif;
		font-size: 1.6rem;
		max-width: 402px;
		width: 100%;
		background-color: #8E8E8E;
		border: 1px solid #8E8E8E;
		border-radius: 15px;
		padding: 4px 0;
		text-align: center;
		margin-top: 12px;
}

.page-template-page-top .top_service .inner .inner_text .btn_2:hover {
		background-color: #fff;
}

.page-template-page-top .top_service .inner .inner_text .btn_2:hover a {
		color: #8E8E8E;
}

.page-template-page-top .top_service .inner .inner_text .btn_2 a {
		color: #fff;
		display: block;
}

@media screen and (max-width: 768px) {
		.page-template-page-top .top_service .inner figure {
				margin-top: 36px;
				max-width: 236px;
		}
}

.page-template-page-top .top_bg_02 {
		margin-top: 132px;
}

@media screen and (max-width: 768px) {
		.page-template-page-top .top_bg_02 {
				margin-top: 40px;
		}
}

.page-template-page-top .top_voice {
		margin-top: 134px;
		padding: 67px 0 52px;
		background: #ffffff;
		background: -moz-linear-gradient(left, #ffffff 0%, #ffffff 20%, #f6f6f6 20%, #f6f6f6 100%);
		background: -webkit-linear-gradient(left, #ffffff 0%, #ffffff 20%, #f6f6f6 20%, #f6f6f6 100%);
		background: linear-gradient(to right, #ffffff 0%, #ffffff 20%, #f6f6f6 20%, #f6f6f6 100%);
		filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#f6f6f6',GradientType=1 );
}

@media screen and (max-width: 768px) {
		.page-template-page-top .top_voice {
				margin-top: 0;
				background: #f6f6f6;
				padding: 40px 0 52px;
		}
}

.page-template-page-top .top_voice .inner {
		max-width: 1160px;
		width: 100%;
		margin-right: auto;
		margin-left: 4.68%;
		display: flex;
}

@media screen and (max-width: 768px) {
		.page-template-page-top .top_voice .inner {
				flex-direction: column-reverse;
				margin-left: 0;
		}
}

.page-template-page-top .top_voice .inner figure {
		width: 45.25%;
}

@media screen and (max-width: 768px) {
		.page-template-page-top .top_voice .inner figure {
				margin-left: auto;
				max-width: 236px;
				width: 100%;
				margin-top: 24px;
		}
}

.page-template-page-top .top_voice .inner .inner_text {
		margin-left: 64px;
}

@media screen and (max-width: 768px) {
		.page-template-page-top .top_voice .inner .inner_text {
				margin-left: 0;
				padding: 0 18px;
		}
}

.page-template-page-top .top_voice .inner .inner_text .ttl {
		font-family: "Marcellus", serif;
		font-weight: 400;
		font-size: 3.8rem;
		letter-spacing: 0.12em;
		color: #3c3c3c;
}

@media screen and (max-width: 768px) {
		.page-template-page-top .top_voice .inner .inner_text .ttl {
				font-size: 2.1rem;
		}
}

.page-template-page-top .top_voice .inner .inner_text .text {
		margin-top: 40px;
		font-family: "Noto Sans JP", sans-serif;
		font-weight: 400;
		font-size: 1.5rem;
		line-height: 2.13;
		color: #1F1F1F;
		text-align: left;
}

@media screen and (max-width: 768px) {
		.page-template-page-top .top_voice .inner .inner_text .text {
				font-size: 1.3rem;
				margin-top: 24px;
		}
}

.page-template-page-top .top_voice .inner .inner_text .btn {
		margin-top: 52px;
		width: 196px;
}

@media screen and (max-width: 768px) {
		.page-template-page-top .top_voice .inner .inner_text .btn {
				margin-top: 24px;
				width: 146px;
				font-size: 1.1rem;
		}
}

.page-template-page-top .voice_illust {
		max-width: 1080px;
		width: 100%;
		margin: -24px auto 0;
}

.page-template-page-top .voice_illust figure {
		max-width: 350px;
		width: 100%;
		margin-left: auto;
}

@media screen and (max-width: 768px) {
		.page-template-page-top .voice_illust figure {
				max-width: 205px;
		}
}

.page-template-page-top .top_gallery {
		margin-top: 132px;
}

@media screen and (max-width: 768px) {
		.page-template-page-top .top_gallery {
				margin-top: 40px;
		}
}

.page-template-page-top .top_gallery .ttl {
		text-align: center;
		font-family: "Marcellus", serif;
		font-weight: 400;
		font-size: 3.6rem;
		letter-spacing: 0.1em;
		color: #000;
}

@media screen and (max-width: 768px) {
		.page-template-page-top .top_gallery .ttl {
				font-size: 2.1rem;
		}
}

.page-template-page-top .top_gallery .slider_gallery {
		margin-top: 60px;
}

@media screen and (max-width: 768px) {
		.page-template-page-top .top_gallery .slider_gallery {
				margin-top: 24px;
		}
}

.page-template-page-top .top_gallery .slider_gallery .slick-slide {
		padding: 0 13px;
}

@media screen and (max-width: 768px) {
		.page-template-page-top .top_gallery .slider_gallery .slick-slide {
				padding: 0 4px;
		}
}

.page-template-page-top .top_gallery .slider_gallery.sp {
		margin-top: 4px;
}

.page .main_visual {
		padding-top: 90px;
}

@media screen and (max-width: 768px) {
		.page .main_visual {
				padding-top: 70px;
		}
}

.page .contents {
		color: #1F1F1F;
}

.page .contents .inner > .ttl {
		font-family: "Marcellus", serif;
		font-size: 3.6rem;
		font-weight: 400;
		letter-spacing: 0.1em;
		margin-top: 55px;
		text-align: center;
}

@media screen and (max-width: 768px) {
		.page .contents .inner > .ttl {
				font-size: 2.1rem;
				margin-top: 24px;
		}
}

.page .contents .inner p {
		font-family: "Noto Serif JP", serif;
		font-weight: 400;
		letter-spacing: 0.1em;
		text-align: center;
}

.page .contents .inner .ja {
		font-size: 2.2rem;
		line-height: 1.818;
		display: flex;
		justify-content: center;
}

@media screen and (max-width: 768px) {
		.page .contents .inner .ja {
				font-size: 1.4rem;
		}
}

.page .contents .inner .ja::before {
		content: '“';
		font-family: "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "MS PMincho", sans-serif;
		font-size: 3rem;
		padding-right: 24px;
}

@media screen and (max-width: 768px) {
		.page .contents .inner .ja::before {
				padding-right: 12px;
		}
}

.page .contents .inner .ja::after {
		content: '”';
		font-family: "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "MS PMincho", sans-serif;
		font-size: 3rem;
		padding-left: 24px;
}

@media screen and (max-width: 768px) {
		.page .contents .inner .ja::after {
				padding-left: 12px;
		}
}

.page .contents .inner .en {
		margin-top: 59px;
		font-size: 1.1rem;
		letter-spacing: 0.2em;
}

@media screen and (max-width: 768px) {
		.page .contents .inner .en {
				margin-top: 24px;
		}
}

.page .contents .inner .color_gray {
		background-color: #F6F6F6;
}

.page .ttl_marrce {
		font-family: "Marcellus", serif;
		font-weight: 400;
		letter-spacing: 0.1em;
		font-size: 3.6rem;
}

@media screen and (max-width: 768px) {
		.page .ttl_marrce {
				font-size: 2.1rem;
		}
}

.mission .mission_massage {
		margin-top: 86px;
}

@media screen and (max-width: 768px) {
		.mission .mission_massage {
				margin-top: 40px;
		}
}

.mission .massage_group {
		margin-top: 98px;
}

@media screen and (max-width: 768px) {
		.mission .massage_group {
				margin-top: 40px;
		}
}

.mission .massage_group .tabContents {
		margin-top: 54px;
}

@media screen and (max-width: 768px) {
		.mission .massage_group .tabContents {
				margin-top: 24px;
		}
}

.mission .massage_group .tabContents .color_gray {
		background-color: #F6F6F6;
}

.mission .massage_group .tabContents .inner_contens {
		text-align: center;
		padding: 74px 0 114px;
}

@media screen and (max-width: 768px) {
		.mission .massage_group .tabContents .inner_contens {
				padding: 40px 0 60px;
		}
}

.mission .massage_group .tabContents .inner_contens h2 {
		font-size: 3.2rem;
}

@media screen and (max-width: 768px) {
		.mission .massage_group .tabContents .inner_contens h2 {
				font-size: 2.1rem;
		}
}

.mission .massage_group .tabContents .inner_contens h2::after {
		content: '';
		max-width: 700px;
		width: 100%;
		border-bottom: 1px dotted #3C3C3C;
		margin: 18px auto 0;
		display: block;
}

@media screen and (max-width: 768px) {
		.mission .massage_group .tabContents .inner_contens h2::after {
				width: 92%;
		}
}

.mission .massage_group .tabContents .inner_contens .ttl_ja {
		font-family: "Noto Serif JP", serif;
		letter-spacing: 0.2em;
		font-size: 1.1rem;
		font-weight: 400;
		display: block;
		margin-top: 9px;
}

@media screen and (max-width: 768px) {
		.mission .massage_group .tabContents .inner_contens .ttl_ja {
				margin-top: 4px;
		}
}

.mission .massage_group .tabContents .inner_contens p {
		font-family: "Noto Sans JP", sans-serif;
		font-weight: 400;
		font-size: 1.5rem;
		line-height: 2.13;
}

@media screen and (max-width: 768px) {
		.mission .massage_group .tabContents .inner_contens p {
				font-size: 1.2rem;
				padding: 0 16px;
		}
}

.mission .massage_group .tabContents .inner_contens p:first-of-type {
		margin-top: 45px;
}

@media screen and (max-width: 768px) {
		.mission .massage_group .tabContents .inner_contens p:first-of-type {
				margin-top: 24px;
		}
}

.mission .massage_group .tabContents .inner_contens p:not(:first-of-type) {
		margin-top: 3em;
}

.mission .massage_group .tabContents .mission_vision {
		background: #ffffff;
		background: -moz-linear-gradient(left, #ffffff 0%, #ffffff 10%, #f6f6f6 10%, #f6f6f6 100%);
		background: -webkit-linear-gradient(left, #ffffff 0%, #ffffff 10%, #f6f6f6 10%, #f6f6f6 100%);
		background: linear-gradient(to right, #ffffff 0%, #ffffff 10%, #f6f6f6 10%, #f6f6f6 100%);
		filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#f6f6f6',GradientType=1 );
}

.mission .massage_group .tabContents .mission_vision ul {
		margin-top: 58px;
		font-family: "Noto Sans JP", sans-serif;
		font-weight: 400;
		font-size: 1.5rem;
		line-height: 2.13;
}

@media screen and (max-width: 768px) {
		.mission .massage_group .tabContents .mission_vision ul {
				margin-top: 24px;
				font-size: 1.2rem;
		}
}

.mission .massage_group .tabContents .mission_corevalue {
		background: -moz-linear-gradient(left, #f6f6f6 0%, #f6f6f6 90%, #ffffff 90%, #ffffff 100%);
		background: -webkit-linear-gradient(left, #f6f6f6 0%, #f6f6f6 90%, #ffffff 90%, #ffffff 100%);
		background: linear-gradient(to right, #f6f6f6 0%, #f6f6f6 90%, #ffffff 90%, #ffffff 100%);
		filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#f6f6f6',GradientType=1 );
}

.mission .massage_group .tabContents .mission_corevalue ul {
		margin-top: 58px;
		font-family: "Noto Sans JP", sans-serif;
		font-weight: 400;
		font-size: 1.5rem;
		line-height: 2.4;
}

@media screen and (max-width: 768px) {
		.mission .massage_group .tabContents .mission_corevalue ul {
				margin-top: 24px;
				font-size: 1.2rem;
		}
}

.about .about_massage .inner p {
		margin-top: 58px;
		line-height: 2.125;
		font-size: 1.4rem;
}

@media screen and (max-width: 768px) {
		.about .about_massage .inner p {
				margin-top: 24px;
		}
}

.about .massage_group {
		margin-top: 85px;
}

@media screen and (max-width: 768px) {
		.about .massage_group {
				margin-top: 40px;
		}
}

.about .massage_group .tabContents {
		margin-top: 48px;
}

@media screen and (max-width: 768px) {
		.about .massage_group .tabContents {
				margin-top: 24px;
		}
}

.about .massage_group .tabContents .color_gray {
		background-color: #F6F6F6;
}

.about .massage_group .tabContents .inner_contens {
		text-align: center;
		max-width: 1160px;
		width: 100%;
		margin: 0 auto;
		padding: 52px 0 65px;
}

@media screen and (max-width: 768px) {
		.about .massage_group .tabContents .inner_contens {
				padding: 40px 0 60px;
		}
}

@media screen and (max-width: 768px) {
		.about .massage_group .tabContents .inner_contens ul {
				padding: 0 18px;
		}
}

.about .massage_group .tabContents .inner_contens ul li:not(:first-child) {
		margin-top: 118px;
}

@media screen and (max-width: 768px) {
		.about .massage_group .tabContents .inner_contens ul li:not(:first-child) {
				margin-top: 60px;
		}
}

.about .massage_group .tabContents .inner_contens ul li dl {
		color: #1F1F1F;
}

.about .massage_group .tabContents .inner_contens ul li dl dt {
		font-family: "Marcellus", serif;
		font-weight: 400;
		font-size: 2.7rem;
		letter-spacing: 0.1em;
		color: #000;
}

@media screen and (max-width: 768px) {
		.about .massage_group .tabContents .inner_contens ul li dl dt {
				font-size: 2rem;
		}
}

.about .massage_group .tabContents .inner_contens ul li dl dt::after {
		content: '';
		max-width: 700px;
		width: 100%;
		border-bottom: 1px dotted #3C3C3C;
		margin: 18px auto 0;
		display: block;
}

@media screen and (max-width: 768px) {
		.about .massage_group .tabContents .inner_contens ul li dl dt::after {
				width: 92%;
		}
}

.about .massage_group .tabContents .inner_contens ul li dl dt .ttl_ja {
		display: block;
		font-family: "Noto Serif JP", serif;
		font-weight: 400;
		font-size: 1.3rem;
		padding-top: 0px;
		color: #1F1F1F;
}

@media screen and (max-width: 768px) {
		.about .massage_group .tabContents .inner_contens ul li dl dt .ttl_ja {
				font-size: 1.1rem;
		}
}

.about .massage_group .tabContents .inner_contens ul li dl dd {
		font-family: "Noto Sans JP", sans-serif;
		font-weight: 400;
		font-size: 1.5rem;
		margin-top: 38px;
		line-height: 2.133;
}

@media screen and (max-width: 768px) {
		.about .massage_group .tabContents .inner_contens ul li dl dd {
				margin-top: 14px;
				font-size: 1.2rem;
		}
}

.about .massage_group .tabContents .inner_contens ul li .btn {
		max-width: 260px;
		width: 100%;
		margin: 50px auto 0;
}

@media screen and (max-width: 768px) {
		.about .massage_group .tabContents .inner_contens ul li .btn {
				margin-top: 24px;
				font-size: 1.1rem;
		}
}

.about .massage_group .tabContents .inner_contens ul li .license__ttl {
		font-size: 1.4rem;
		margin-top: 24px;
		font-family: "Noto Sans JP", sans-serif;
		font-weight: 400;
}

.about .massage_group .tabContents .inner_contens ul li .license li {
		margin-top: 8px;
		font-size: 1.2rem;
		font-family: "Noto Sans JP", sans-serif;
}

.about .about_identity {
		max-width: 1160px;
		width: 100%;
		margin: 89px auto 0;
		text-align: center;
		border: 1px solid #707070;
		padding: 41px 0 57px;
}

@media screen and (max-width: 768px) {
		.about .about_identity {
				margin-top: 40px;
				width: 95%;
		}
}

.about .about_identity h2 {
		font-family: "Marcellus", serif;
		font-weight: 400;
		letter-spacing: 0.1em;
		font-size: 3.6rem;
}

@media screen and (max-width: 768px) {
		.about .about_identity h2 {
				font-size: 2.1rem;
		}
}

.about .about_identity h2::after {
		content: '';
		max-width: 700px;
		width: 100%;
		border-bottom: 1px dotted #3C3C3C;
		margin: 18px auto 0;
		display: block;
}

@media screen and (max-width: 768px) {
		.about .about_identity h2::after {
				width: 92%;
		}
}

.about .about_identity figure {
		max-width: 330px;
		width: 100%;
		margin: 60px auto 0;
}

@media screen and (max-width: 768px) {
		.about .about_identity figure {
				width: 50%;
				margin-top: 30px;
		}
}

.about .about_identity h3 {
		margin-top: 85px;
}

@media screen and (max-width: 768px) {
		.about .about_identity h3 {
				margin-top: 40px;
		}
}

.about .about_identity h3 .ttl_en {
		font-family: "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "MS PMincho", sans-serif;
		font-weight: 400;
		font-size: 2.4rem;
		letter-spacing: 0.1em;
		display: flex;
		justify-content: center;
		color: #3C3C3C;
}

@media screen and (max-width: 768px) {
		.about .about_identity h3 .ttl_en {
				font-size: 1.8rem;
				padding: 0 8px;
		}
}

.about .about_identity h3 .ttl_en::before {
		content: '“';
}

.about .about_identity h3 .ttl_en::after {
		content: '”';
}

.about .about_identity h3 .ttl_ja {
		font-size: 1.5rem;
		display: block;
		margin-top: 21px;
		font-weight: 400;
}

@media screen and (max-width: 768px) {
		.about .about_identity h3 .ttl_ja {
				font-size: 1.2rem;
		}
}

.about .about_identity p {
		font-family: "Noto Sans JP", sans-serif;
		font-weight: 400;
		font-size: 1.5rem;
		line-height: 2.133;
		letter-spacing: 0.1em;
		color: #1F1F1F;
}

@media screen and (max-width: 768px) {
		.about .about_identity p {
				font-size: 1.2rem;
		}
}

.about .about_identity p:first-of-type {
		margin-top: 49px;
}

.about .about_identity .massge_center {
		display: flex;
		flex-direction: column;
		align-items: center;
}

.about .about_identity .massge_center::before {
		content: '';
		width: 6px;
		height: 6px;
		background-color: #707070;
		border-radius: 50%;
		display: block;
		margin-top: 57px;
		margin-bottom: 45px;
}

@media screen and (max-width: 768px) {
		.about .about_identity .massge_center::before {
				margin: 24px auto 18px;
		}
}

.about .about_identity .massge_center::after {
		content: '';
		width: 6px;
		height: 6px;
		background-color: #707070;
		border-radius: 50%;
		display: block;
		margin-bottom: 74px;
		margin-top: 45px;
}

@media screen and (max-width: 768px) {
		.about .about_identity .massge_center::after {
				margin: 24px auto 32px;
		}
}

.page-id-2403 .btn {
		font-family: "Optima", "Roman", sans-serif;
}

.page .contents h3 {
		margin-top: 57px;
		display: block !important;
		text-align: center;
		font-family: "Noto Serif JP", serif;
		font-weight: 400;
		font-size: 3rem;
		line-height: 2;
}

@media screen and (max-width: 768px) {
		.page .contents h3 {
				margin-top: 24px;
				font-size: 2.1rem;
				line-height: 1.6;
		}
}

.page .contents h3 .copy {
		font-size: 3rem !important;
}

@media screen and (max-width: 768px) {
		.page .contents h3 .copy {
				font-size: 2.1rem !important;
		}
}

.page .contents h3 span {
		display: block;
}

.page .contents h3.en {
		margin-top: 50px !important;
		text-align: center;
}

@media screen and (max-width: 768px) {
		.page .contents h3.en {
				margin-top: 24px !important;
		}
}

.biography .biography_profile {
		color: #1F1F1F;
		margin-top: 110px;
}

@media screen and (max-width: 768px) {
		.biography .biography_profile {
				margin-top: 60px;
		}
}

.biography .biography_profile h4 {
		font-family: "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "MS PMincho", sans-serif;
		font-weight: 400;
		font-size: 1.6rem;
		letter-spacing: 0.1em;
		line-height: 1.875;
		text-align: center;
}

@media screen and (max-width: 768px) {
		.biography .biography_profile h4 {
				font-size: 1.2rem;
		}
}

.biography .biography_profile .name {
		font-family: "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "MS PMincho", sans-serif;
		font-weight: 400;
		text-align: center;
		margin-top: 33px;
}

@media screen and (max-width: 768px) {
		.biography .biography_profile .name {
				margin-top: 16px;
		}
}

.biography .biography_profile .name span {
		display: block;
}

.biography .biography_profile .name .ja {
		font-size: 4rem;
		letter-spacing: 0.3em;
}

@media screen and (max-width: 768px) {
		.biography .biography_profile .name .ja {
				font-size: 3rem;
		}
}

.biography .biography_profile .name .en {
		font-family: "Optima", "Roman", sans-serif;
		font-size: 1.4rem;
		letter-spacing: 0.47em;
}

@media screen and (max-width: 768px) {
		.biography .biography_profile .name .en {
				font-size: 1.1rem;
		}
}

.biography .biography_profile .bg_gray_gra {
		margin-top: 48px;
		background: #ffffff;
		background: -moz-linear-gradient(left, #ffffff 0%, #ffffff 20%, #f6f6f6 20%, #f6f6f6 100%);
		background: -webkit-linear-gradient(left, #ffffff 0%, #ffffff 20%, #f6f6f6 20%, #f6f6f6 100%);
		background: linear-gradient(to right, #ffffff 0%, #ffffff 20%, #f6f6f6 20%, #f6f6f6 100%);
		filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#f6f6f6',GradientType=1 );
		padding: 40px 0 52px;
}

@media screen and (max-width: 768px) {
		.biography .biography_profile .bg_gray_gra {
				margin-top: 24px;
				padding: 16px 0 32px;
				background: #f6f6f6;
		}
}

.biography .biography_profile .profile_box_01 {
		padding: 67px 0 52px;
}

@media screen and (max-width: 768px) {
		.biography .biography_profile .profile_box_01 {
				padding: 40px 0 52px;
		}
}

.biography .biography_profile .profile_box_01 .inner {
		max-width: 1160px;
		width: 100%;
		margin: 0 auto;
		display: flex;
}

@media screen and (max-width: 768px) {
		.biography .biography_profile .profile_box_01 .inner {
				flex-direction: column-reverse;
				margin-left: 0;
		}
}

.biography .biography_profile .profile_box_01 .inner figure {
		width: 45.25%;
}

@media screen and (max-width: 768px) {
		.biography .biography_profile .profile_box_01 .inner figure {
				margin-left: auto;
				max-width: 236px;
				width: 100%;
				margin-top: 24px;
		}
}

.biography .biography_profile .profile_box_01 .inner .inner_text {
		margin-left: 64px;
		max-width: 500px;
		width: 100%;
}

@media screen and (max-width: 768px) {
		.biography .biography_profile .profile_box_01 .inner .inner_text {
				margin-left: 0;
				padding: 0 18px;
		}
}

.biography .biography_profile .profile_box_01 .inner .inner_text .text {
		font-family: "Noto Sans JP", sans-serif;
		font-weight: 400;
		font-size: 1.7rem;
		line-height: 1.882;
		color: #1F1F1F;
		text-align: left;
		word-break:break-all;
}

@media screen and (max-width: 768px) {
		.biography .biography_profile .profile_box_01 .inner .inner_text .text {
				font-size: 1.2rem;
		}
}

.biography .biography_profile .profile_box_01 .inner .inner_text ul {
		font-family: "Noto Sans JP", sans-serif;
		font-size: 1.7rem;
		line-height: 1.882;
}

@media screen and (max-width: 768px) {
		.biography .biography_profile .profile_box_01 .inner .inner_text ul {
				font-size: 1.1rem;
				margin-top: 0px;
		}
}

.biography .biography_profile .profile_box_02 {
		margin-top: 14px;
}

.biography .biography_profile .profile_box_02 .inner .inner_text {
		max-width: 1080px;
		width: 100%;
		margin: 0 auto;
}

@media screen and (max-width: 768px) {
		.biography .biography_profile .profile_box_02 .inner .inner_text {
				padding: 0 18px;
		}
}

.biography .biography_profile .profile_box_02 .inner .inner_text .text {
		font-family: "Noto Sans JP", sans-serif;
		font-weight: 400;
		font-size: 1.7rem;
		line-height: 1.882;
		color: #1F1F1F;
		text-align: left;
}

@media screen and (max-width: 768px) {
		.biography .biography_profile .profile_box_02 .inner .inner_text .text {
				font-size: 1.2rem;
				margin-top: 0px;
		}
}

.biography .biography_profile .profile_box_02 .inner .inner_text ul {
		font-family: "Noto Sans JP", sans-serif;
		font-size: 1.7rem;
		line-height: 1.882;
}

@media screen and (max-width: 768px) {
		.biography .biography_profile .profile_box_02 .inner .inner_text ul {
				font-size: 1.1rem;
				margin-top: 0px;
		}
}

.biography .biography_profile .box_03.bg_gray {
		background-color: #F6F6F6;
		padding: 33px 0 26px;
}

.biography .biography_profile .biography_bg_01 {
		max-width: 1080px;
		width: 100%;
		margin: 58px auto;
}

.biography .sns_area {
		max-width: 330px;
		width: 100%;
		margin: 50px auto 0;
}

.biography .sns_area h3 {
		font-family: "Noto Serif JP", serif;
		font-weight: 400;
		font-size: 1.6rem;
		color: #3C3C3C;
		border-top: 1px solid #707070;
		border-bottom: 1px solid #707070;
		padding: 11px 0;
		text-align: center;
}

.biography .sns_area ul {
		display: flex;
		justify-content: space-between;
		margin-top: 32px;
}

.biography .sns_area ul li {
		width: 69px;
}

.biography .sns_area ul li a:hover {
		opacity: .6;
}

.biography .sns_area ul .insta {
		width: 85px;
}

.biography figure.img {
		max-width: 1080px;
		width: 100%;
		margin: 14px auto 0;
}

.contact {
		padding-top: 100px;
		text-align: center;
}

.contact .contents {
		max-width: 870px;
		width: 100%;
		margin: 0 auto;
}

.contact .contents .ttl {
		font-family: "Marcellus", serif;
		font-weight: 400;
		font-size: 3.6rem;
		letter-spacing: 0.1em;
		display: inline-block;
		border-bottom: 1px solid #000;
		color: #000;
		padding-bottom: 10px;
}

@media screen and (max-width: 768px) {
		.contact .contents .ttl {
				font-size: 2.4rem;
		}
}

.contact .contents > p {
		font-family: "Optima", "Roman", sans-serif;
		font-weight: 400;
		font-size: 1.5rem;
		text-align: right;
}

@media screen and (max-width: 768px) {
		.contact .contents > p {
				text-align: center;
				font-size: 1.2rem;
				margin-top: 24px;
		}
}

.contact .contents .inner_form {
		margin-top: 69px;
		text-align: left;
		color: #1F1F1F;
}

@media screen and (max-width: 768px) {
		.contact .contents .inner_form {
				margin-top: 24px;
		}
}

.contact .contents .inner_form form {
		font-family: "Noto Serif JP", serif;
		font-weight: 400;
		font-size: 1.6rem;
}

@media screen and (max-width: 768px) {
		.contact .contents .inner_form form {
				font-size: 1.6rem;
				padding: 0 16px;
		}
}

.contact .contents .inner_form form ul > li {
		margin-top: 30px;
}

@media screen and (max-width: 768px) {
		.contact .contents .inner_form form ul > li {
				margin-top: 24px;
		}
}

.contact .contents .inner_form form ul > li:last-child label {
		align-items: flex-start;
}

.contact .contents .inner_form form ul > li {
		display: flex;
		flex-direction: column;
}

@media screen and (max-width: 768px) {
		.contact .contents .inner_form form ul > li {
				flex-direction: column;
		}
}

.contact .contents .inner_form form ul > li input[type="text"] {
		border: 1px solid #E5E5E5;
		background-color: #E5E5E5;
		box-shadow: none;
		width: 100%;
		margin-top: 17px;
}

.contact .contents .inner_form form ul > li input[type="email"] {
		border: 1px solid #E5E5E5;
		background-color: #E5E5E5;
		box-shadow: none;
		width: 100%;
		margin-top: 17px;
}

.contact .contents .inner_form form ul > li textarea {
		background-color: #E5E5E5;
		border: 1px solid #E5E5E5;
		box-shadow: none;
		margin-top: 17px;
		width: 100%;
}

.contact .contents .inner_form form .submit_area {
		display: flex;
		justify-content: center;
}

.contact .contents .inner_form form .submit_area li {
		width: 40%;
}

@media screen and (max-width: 768px) {
		.contact .contents .inner_form form .submit_area li {
				width: 80%;
		}
}

.contact .contents .inner_form form .submit_area li input[type="submit"] {
		width: 100%;
		background-color: #4B158A;
		border: 1px solid #4B158A;
		color: #fff;
		padding: 6px 0;
		transition: all .8s;
		margin: 40px auto;
}

.contact .contents .inner_form form .submit_area li input[type="submit"]:hover {
		background-color: #FFF;
		color: #4B158A;
}

.contact .note {
		margin-top: 40px;
		text-align: center;
}

.contact .note a {
		display: inline-block;
		color: #4B158A;
}

.grecaptcha-badge {
		display: none !important;
}

.service .service_profile {
		margin-top: 135px;
}

@media screen and (max-width: 768px) {
		.service .service_profile {
				margin-top: 40px;
		}
}

.service .service_profile h4 {
		font-family: "Marcellus", serif;
		font-weight: 400;
		font-size: 3.6rem;
		letter-spacing: 0.1em;
		color: #000;
		text-align: center;
}

@media screen and (max-width: 768px) {
		.service .service_profile h4 {
				font-size: 2.1rem;
		}
}

.service .service_profile .contents_inner .inner figure {
		max-width: 771px;
		width: 100%;
		margin: 88px auto 0;
}

@media screen and (max-width: 768px) {
		.service .service_profile .contents_inner .inner figure {
				margin-top: 40px;
		}
}

.service .service_profile .contents_inner .btn {
		margin: 40px auto 0;
}

.service .service_course {
		margin-top: 120px;
}

@media screen and (max-width: 768px) {
		.service .service_course {
				margin-top: 120px;
		}
}

.service .service_course .service_course_box {
		max-width: 1160px;
		width: 100%;
		margin: 0 auto;
		color: #1F1F1F;
		text-align: center;
}

.service .service_course .service_course_box h3 {
		font-weight: 400;
		font-size: 1.6rem;
		letter-spacing: 0.1em;
		color: #3c3c3c;
}

@media screen and (max-width: 768px) {
		.service .service_course .service_course_box h3 {
				font-size: 1.2rem;
		}
}

.service .service_course .service_course_box h4 {
		font-weight: 400;
		font-size: 2.8rem;
		letter-spacing: 0.1em;
		color: #3c3c3c;
		display: inline-block;
		border-bottom: 1px solid #707070;
		padding-bottom: 8px;
		margin-top: 28px;
}

@media screen and (max-width: 768px) {
		.service .service_course .service_course_box h4 {
				font-size: 1.8rem;
		}
}

.service .service_course .service_course_box .notice {
		margin-top: 24px;
		font-family: "Noto Serif JP", serif;
		font-weight: 400;
		font-size: 1.6rem;
}

@media screen and (max-width: 768px) {
		.service .service_course .service_course_box .notice {
				margin-top: 12px;
				font-size: 1.1rem;
		}
}

.service .service_course .service_course_box .btn {
		max-width: 260px;
		width: 100%;
		margin: 35px auto 0;
}

@media screen and (max-width: 768px) {
		.service .service_course .service_course_box .btn {
				margin-top: 24px;
		}
}

.service .service_course .service_course_box .service__btn {
		max-width: 394px;
		width: 100%;
		display: block;
		border: 1px solid #4B158A;
		background-color: #4B158A;
		border-radius: 0;
}

@media screen and (max-width: 768px) {
		.service .service_course .service_course_box .service__btn {
				width: 80%;
		}
}

.service .service_course .service_course_box .service__btn:hover {
		background-color: #fff;
}

.service .service_course .service_course_box .service__btn:hover a {
		color: #4B158A;
}

.service .service_course .service_course_box .service__btn a {
		padding: 16px 0;
		color: #fff;
}

.service .service_course .service_course_box .inner {
		margin-top: 43px;
		text-align: left;
}

@media screen and (max-width: 768px) {
		.service .service_course .service_course_box .inner {
				margin-top: 24px;
		}
}

.service .service_course .service_course_box .inner .description {
		display: flex;
		justify-content: center;
}

@media screen and (max-width: 768px) {
		.service .service_course .service_course_box .inner .description {
				flex-direction: column;
				padding: 0 18px;
		}
}

.service .service_course .service_course_box .inner .description figure {
		width: 30%;
		border: 1px solid #c2c2c2;
}

@media screen and (max-width: 768px) {
		.service .service_course .service_course_box .inner .description figure {
				width: 100%;
		}
}

.service .service_course .service_course_box .inner .description .inner_text {
		max-width: 621px;
		width: 100%;
		margin-top: 24px;
		margin-left: 6.37%;
}

@media screen and (max-width: 768px) {
		.service .service_course .service_course_box .inner .description .inner_text {
				margin-top: 24px;
				margin-left: 0;
		}
}

.service .service_course .service_course_box .inner .description .inner_text p {
		font-family: "Noto Sans JP", sans-serif;
		font-weight: 400;
		font-size: 1.5rem;
		line-height: 2.13;
}

@media screen and (max-width: 768px) {
		.service .service_course .service_course_box .inner .description .inner_text p {
				font-size: 1.2rem;
		}
}

.service .service_course .service_course_box .inner .description .inner_text .notion {
		font-size: 1.4rem;
		border: 1px solid #4B158A;
		color: #4B158A;
		padding: 2px 8px;
		display: inline-block;
		margin-bottom: 16px;
		letter-spacing: 0.1em;
}

.service .service_course .service_course_box .inner .description .inner_text .inner_text_2 {
		margin-top: 32px;
		font-family: 'ヒラギノ角ゴシック','Hiragino Sans',YuGothic,'Yu Gothic',sans-serif;
		font-weight: 400;
		font-size: 1.5rem;
		line-height: 1.86;
}

@media screen and (max-width: 768px) {
		.service .service_course .service_course_box .inner .description .inner_text .inner_text_2 {
				font-size: 1.2rem;
		}
}

.service .service_course .service_course_box .inner .description .inner_text .green {
		color: #44B5C3;
}

.service .service_course .service_course_box .inner .description .inner_text .yellow {
		color: #FAA300;
}

.service .service_course .service_course_box .inner .description .inner_text .blue {
		color: #005395;
}

.service .service_course .service_course_box .inner .description .inner_text .purple {
		color: #4B158A;
}

.service .service_course .service_course_box .inner .details {
		padding: 33px 0 46px 40px;
		margin-top: 54px;
}

@media screen and (max-width: 768px) {
		.service .service_course .service_course_box .inner .details {
				margin-top: 24px;
				padding: 24px 18px 32px;
		}
}

.service .service_course .service_course_box .inner .details .details_inner {
		display: flex;
		justify-content: flex-start;
		font-family: "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "MS PMincho", sans-serif;
}

@media screen and (max-width: 768px) {
		.service .service_course .service_course_box .inner .details .details_inner {
				flex-direction: column;
		}
}

.service .service_course .service_course_box .inner .details .details_inner .details_inner_box {
		min-height: 380px;
		display: flex;
		flex-direction: column;
		justify-content: space-between;
}

@media screen and (max-width: 768px) {
		.service .service_course .service_course_box .inner .details .details_inner .details_inner_box {
				justify-content: flex-start;
				min-height: 1px;
		}
}

@media screen and (max-width: 768px) {
		.service .service_course .service_course_box .inner .details .details_inner .details_inner_box .box {
				margin-top: 8px;
		}
}

.service .service_course .service_course_box .inner .details .details_inner .details_inner_box .box dl dt {
		font-family: "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "MS PMincho", sans-serif;
		font-weight: 400;
		font-size: 1.6rem;
}

@media screen and (max-width: 768px) {
		.service .service_course .service_course_box .inner .details .details_inner .details_inner_box .box dl dt {
				font-size: 1.4rem;
		}
}

.service .service_course .service_course_box .inner .details .details_inner .details_inner_box .box dl dd {
		font-family: "Noto Sans JP", sans-serif;
		font-weight: 400;
		font-size: 1.5rem;
		line-height: 2.13;
		margin-top: 24px;
}

@media screen and (max-width: 768px) {
		.service .service_course .service_course_box .inner .details .details_inner .details_inner_box .box dl dd {
				font-size: 1.2rem;
				margin-top: 8px;
		}
}

.service .service_course .service_course_box .inner .details .details_inner .details_inner_box .box dl dd .under-line {
		font-size: 2rem;
		border-bottom: 1px solid #000;
		padding-bottom: 1px;
}

.service .service_course .service_course_box .inner .details .details_inner .details_inner_box .box ul {
		margin-top: 28px;
}

@media screen and (max-width: 768px) {
		.service .service_course .service_course_box .inner .details .details_inner .details_inner_box .box ul {
				margin-top: 16px;
		}
}

.service .service_course .service_course_box .inner .details .details_inner .details_inner_box .box ul li {
		font-size: 1.1rem;
}

.service .service_course .service_course_box .inner .details .details_inner .left_box {
		max-width: 520px;
		width: 100%;
}

.service .service_course .service_course_box .inner .details .details_inner .left_box .box ul {
		margin-top: 2em;
}

@media screen and (max-width: 768px) {
		.service .service_course .service_course_box .inner .details .details_inner .left_box .box ul {
				margin-top: 1em;
		}
}

.service .service_course .service_course_box .inner .details .details_inner .left_box .box ul li {
		line-height: 2.13;
		font-size: 1.5rem;
}

@media screen and (max-width: 768px) {
		.service .service_course .service_course_box .inner .details .details_inner .left_box .box ul li {
				font-size: 1.2rem;
		}
}

@media screen and (max-width: 768px) {
		.service .service_course .service_course_box .inner .details .details_inner .left_box .box p {
				font-size: 1.2rem;
		}
}

.service .service_course .service_course_box .inner .details .details_inner .right_box {
		margin-left: 5.77%;
}

@media screen and (max-width: 768px) {
		.service .service_course .service_course_box .inner .details .details_inner .right_box {
				margin-left: 0;
		}
}

.service .service_course .service_course_box .inner .details .details_inner .right_box .box dd a {
		font-size: 1.4rem;
		text-decoration: underline;
		color: #4B158A;
}

.service .service_course .service_course_box .inner .details.green {
		background-color: #E6F5F7;
}

.service .service_course .service_course_box .inner .details.blue {
		background-color: #DEE9F1;
}

.service .service_course .service_course_box .inner .details.yellow {
		background-color: #FFF5E3;
}

.service .service_course .service_course_box .inner .details.purple {
		background-color: #EFECF5;
}

.service .service_course .service_course_basic {
		margin-top: 124px;
}

@media screen and (max-width: 768px) {
		.service .service_course .service_course_basic {
				margin-top: 40px;
		}
}

.service .service_course .service_course_master {
		margin-top: 138px;
}

@media screen and (max-width: 768px) {
		.service .service_course .service_course_master {
				margin-top: 40px;
		}
}

.service .reference {
		font-size: 1.1rem;
		margin-left: 0.5em;
}

@media screen and (max-width: 768px) {
		.service .slickslider {
				margin-top: 40px !important;
		}
}

.page .slickslider {
		margin-top: 127px;
}

@media screen and (max-width: 768px) {
		.page .slickslider {
				margin-top: 6px;
		}
}

.page .slickslider .ttl {
		font-family: "Marcellus", serif;
		font-size: 3.6rem;
		text-align: center;
}

@media screen and (max-width: 768px) {
		.page .slickslider .ttl {
				font-size: 2.7rem;
		}
}

.page .slickslider .slider_gallery {
		margin-top: 60px;
}

@media screen and (max-width: 768px) {
		.page .slickslider .slider_gallery {
				margin-top: 40px;
		}
}

.page .slickslider .slider_gallery .slick-slide {
		padding: 0 13px;
}

.page .contents {
		text-align: center;
}

.page .contents .ttl {
		border-bottom: 1px solid #000000;
		padding-bottom: 10px;
		display: inline-block;
}

.page .contents .ttl_ja_2 {
		font-family: "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "MS PMincho", sans-serif;
		font-weight: 400;
		font-size: 1.6rem;
		margin-top: 26px;
}

.page .contents .inner span {
		font-size: 2.8rem;
}

@media screen and (max-width: 768px) {
		.page .contents .inner span {
				font-size: 1.4rem;
		}
}

.session_list {
		text-align: center;
		max-width: 1080px;
		width: 100%;
		margin: 147px auto 0;
}

@media screen and (max-width: 768px) {
		.session_list {
				margin-top: 60px;
				margin-bottom: 40px;
		}
}

.session_list:nth-of-type(n+2) {
		margin-top: 133px;
}

@media screen and (max-width: 768px) {
		.session_list:nth-of-type(n+2) {
				margin-top: 40px;
		}
}

.session_list:last-of-type .nlp {
		display: none;
}

.session_list h3 {
		display: inline-block;
		font-size: 3rem;
		border-bottom: 1px solid #000000;
		font-family: "Noto Serif JP", serif;
		font-weight: 400;
		letter-spacing: 0.1em;
		margin-bottom: 66px;
}

@media screen and (max-width: 768px) {
		.session_list h3 {
				font-size: 2.4rem;
				margin-bottom: 40px;
		}
}

.session_list article h4 {
		font-family: "Noto Sans JP", sans-serif;
		font-weight: 600;
		font-size: 1.8rem;
		text-align: left;
}

@media screen and (max-width: 768px) {
		.session_list article h4 {
				font-size: 1.6rem;
				padding-left: 18px;
		}
}

.session_list article ul {
		margin-top: 18px;
		text-align: left;
}

@media screen and (max-width: 768px) {
		.session_list article ul {
				padding: 0 18px;
		}
}

.session_list article ul li {
		font-family: "Noto Sans JP", sans-serif;
		font-weight: 400;
		letter-spacing: 0.1em;
		font-size: 1.4rem;
		color: #3C3C3C;
		padding: 4px 0 4px 27px;
}

@media screen and (max-width: 768px) {
		.session_list article ul li {
				font-size: 1.4rem;
				padding: 4px 4px 4px 6px;
		}
}

.session_list article ul li:not(:first-child) {
		margin-top: 2px;
}

.session_list article ul li:nth-child(even) {
		background-color: #F1F1F1;
}

.session_list article ul li:nth-child(odd) {
		background-color: #E5E5E5;
}

.session_list .seminer {
		margin-top: 53px;
}

@media screen and (max-width: 768px) {
		.session_list .seminer {
				margin-top: 24px;
		}
}

.voice .map {
		max-width: 1160px;
		width: 100%;
		margin: 142px auto 0;
		color: #1F1F1F;
}

@media screen and (max-width: 768px) {
		.voice .map {
				margin-top: 40px;
		}
}

.voice .map h3 {
		font-family: "Noto Serif JP", serif;
		font-weight: 500;
		font-size: 2.4rem;
		letter-spacing: 0.1em;
		text-align: center;
}

@media screen and (max-width: 768px) {
		.voice .map h3 {
				font-size: 1.8rem;
		}
}

.voice .map figure {
		margin: 31px auto 0;
		text-align: center;
		width: 80%;
}

@media screen and (max-width: 768px) {
		.voice .map figure {
				padding: 0 18px;
				width: 90%;
		}
}

.voice .map figure figcaption {
		font-family: "Noto Sans JP", sans-serif;
		font-weight: 400;
		display: inline-block;
		text-align: left;
		font-size: 1.2rem;
		line-height: 1.66666;
		word-break: keep-all;
}

.voice .voice_list {
		max-width: 1160px;
		width: 100%;
		margin: 80px auto 0;
		color: #1F1F1F;
}

@media screen and (max-width: 768px) {
		.voice .voice_list {
				margin-top: 40px;
		}
}

.voice .voice_list > ul {
		display: flex;
		flex-wrap: wrap;
}

.voice .voice_list > ul > li {
		width: 33.333%;
		padding: 30px 30px 24px;
		box-sizing: border-box;
}

@media screen and (max-width: 768px) {
		.voice .voice_list > ul > li {
				width: 50%;
				padding: 18px 8px 12px;
		}
}

.voice .voice_list > ul > li:nth-child(even) {
		background-color: #FBFAFD;
}

.voice .voice_list > ul > li:nth-child(odd) {
		background-color: #F2EEF7;
}

.voice .voice_list > ul > li h3 {
		border-top: 1px solid #4B158A;
		border-bottom: 1px solid #4B158A;
		font-family: "Noto Serif JP", serif;
		font-weight: 400;
		letter-spacing: 0.1em;
		color: #4B158A;
		padding: 4px 4px;
		line-height: 1;
}

.voice .voice_list > ul > li h3 .en {
		font-size: 1.3rem;
		margin-right: 0.4em;
}

.voice .voice_list > ul > li h3 .number {
		font-size: 3rem;
		vertical-align: sub;
}

@media screen and (max-width: 768px) {
		.voice .voice_list > ul > li h3 .number {
				font-size: 2.4rem;
		}
}

.voice .voice_list > ul > li h2 {
		font-family: "Noto Serif JP", serif;
		font-weight: 500;
		font-size: 1.9rem;
		line-height: 1.73;
		color: #1F1F1F;
		margin-top: 27px;
}

@media screen and (max-width: 768px) {
		.voice .voice_list > ul > li h2 {
				font-size: 1.4rem;
		}
}

.voice .voice_list > ul > li p {
		font-family: "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "MS PMincho", sans-serif;
		font-weight: 400;
		font-size: 1.1rem;
		letter-spacing: 0.1em;
		margin-top: 30px;
}

.voice .voice_list > ul > li p a {
		color: #4B158A;
		text-decoration: underline;
}

.voice .voice_list > ul > li h4 {
		margin-top: 37px;
		font-family: "Noto Sans JP", sans-serif;
		font-weight: 400;
}

@media screen and (max-width: 768px) {
		.voice .voice_list > ul > li h4 {
				margin-top: 16px;
		}
}

.voice .voice_list > ul > li h4 .name {
		font-size: 1.5rem;
		font-weight: 400;
}

.voice .voice_list > ul > li h4 .sama {
		font-size: 1.2rem;
}

.voice .voice_list > ul > li ul {
		font-family: "Noto Sans JP", sans-serif;
		font-weight: 100;
		letter-spacing: 0.1em;
}

.voice .voice_list > ul > li ul li {
		margin-top: 12px;
		font-size: 1.2rem;
}

.single {
		margin-top: 40px;
		text-align: center;
}

@media screen and (max-width: 768px) {
		.single {
				margin-top: 64px;
		}
}

.single p a {
		display: inline-block;
		color: #63328E;
}

.single .single_massage .ttl {
		font-family: "Marcellus", serif;
		font-weight: 400;
		font-size: 3.6rem;
		letter-spacing: 0.1em;
		display: inline-block;
		border-bottom: 1px solid #000;
		color: #000;
		padding-bottom: 10px;
}

@media screen and (max-width: 768px) {
		.single .single_massage .ttl {
				font-size: 2.4rem;
		}
}

.single .single_massage h3 {
		font-family: "Noto Serif JP", serif;
		font-weight: 500;
		font-size: 2.4rem;
		line-height: 1.6;
		letter-spacing: 0.1em;
}

@media screen and (max-width: 768px) {
		.single .single_massage h3 {
				font-size: 1.4rem;
		}
}

.single .single_contents {
		max-width: 700px;
		width: 100%;
		margin: 90px auto 0;
		font-family: "Noto Sans JP", sans-serif;
		font-size: 1.5rem;
}

@media screen and (max-width: 768px) {
		.single .single_contents {
				font-size: 1.4rem;
				margin-top: 40px;
				padding: 0 18px;
		}
}

.single .single_contents ul li {
		text-align: left;
		line-height: 2.13;
		letter-spacing: 0.1em;
}

.single .single_contents ul li:nth-child(n+2) {
		margin-top: 2em;
}

.single .single_contents ul li dl dt {
		font-weight: 700;
		color: #4B158A;
}

.single .single_contents ul li dl dd {
		font-weight: 400;
		color: #1F1F1F;
}

.single .single_contents figure {
		margin-top: 180px;
}

@media screen and (max-width: 768px) {
		.single .single_contents figure {
				margin-top: 40px;
		}
}

.single .single_contents figure img {
		height: 206px;
		width: auto;
}

.single .single_contents figure figcaption {
		margin-top: 32px;
		text-align: center;
		font-family: "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "MS PMincho", sans-serif;
		font-size: 2.4rem;
		font-weight: 400;
		letter-spacing: 0.1em;
}

.single .single_contents figure figcaption .name {
		font-weight: 400;
}

.single .single_contents figure figcaption .sama {
		font-size: 1.4rem;
}

.single .single_contents figure figcaption p {
		font-size: 1.5rem;
		margin-top: 16px;
}

.single .single_contents .course_history {
		display: inline-block;
		margin-top: 24px;
}

.single .single_contents .course_history li {
		font-size: 1.2rem;
		line-height: 1.4;
		margin-top: 4px !important;
}

.single .single_contents .btn {
		margin: 40px auto 0;
}

.payment {
		padding-top: 129px;
		letter-spacing: 0.1em;
}

@media screen and (max-width: 768px) {
		.payment {
				padding-top: 70px;
		}
}

.payment a {
		display: inline-block;
}

.payment .contents {
		text-align: center;
}

.payment .contents .payment_nav {
		display: flex;
		justify-content: space-around;
		width: 50%;
		margin: 24px auto 0;
}

@media screen and (max-width: 768px) {
		.payment .contents .payment_nav {
				flex-direction: column;
				width: 100%;
				padding: 0 16px;
		}
}

.payment .contents .payment_nav li {
		background-color: #4B158A;
		border: 1px solid #4B158A;
		transition: all .6s;
}

@media screen and (max-width: 768px) {
		.payment .contents .payment_nav li {
				margin-top: 4px;
		}
}

.payment .contents .payment_nav li:hover {
		background-color: #fff;
}

.payment .contents .payment_nav li:hover a {
		color: #4B158A;
}

.payment .contents .payment_nav li a {
		color: #fff;
		padding: 8px 24px;
}

.payment .contents .pay_caption {
		max-width: 740px;
		width: 100%;
		margin: 24px auto 0;
}

@media screen and (max-width: 768px) {
		.payment .contents .pay_caption {
				padding: 0 16px;
				font-size: 1.2rem;
		}
}

.payment .contents .ttl {
		font-family: "Marcellus", serif;
		font-weight: 400;
		font-size: 3.6rem;
		border-bottom: 1px solid #000000;
		padding-bottom: 10px;
		display: inline-block;
}

@media screen and (max-width: 768px) {
		.payment .contents .ttl {
				font-size: 2.1rem;
		}
}

.payment .contents h3 {
		font-family: "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "MS PMincho", sans-serif;
		font-weight: 400;
		font-size: 1.6rem;
		margin-top: 26px;
}

@media screen and (max-width: 768px) {
		.payment .contents h3 {
				font-size: 1.2rem;
		}
}

.payment .contents .discription {
		font-family: "Noto Serif JP", serif;
		font-weight: 400;
		font-size: 1.6rem;
		margin-top: 40px;
		line-height: 2.125;
}

@media screen and (max-width: 768px) {
		.payment .contents .discription {
				font-size: 1.2rem;
				padding: 0 16px;
		}
}

.payment .contents .inner {
		max-width: 740px;
		width: 100%;
		margin: 60px auto 0;
		font-family: "Noto Serif JP", serif;
		font-size: 1.3rem;
		color: #1F1F1F;
}

@media screen and (max-width: 768px) {
		.payment .contents .inner {
				margin-top: 40px;
				padding: 0 18px;
		}
}

.payment .contents .inner h4 {
		text-align: left;
		margin-top: 40px;
		font-weight: 400;
}

.payment .contents .inner ul {
		text-align: left;
		margin-top: 1em;
}

.payment .contents .inner p {
		margin-top: 3em;
		text-align: left;
}

@media screen and (max-width: 768px) {
		.payment .contents .inner p {
				margin-top: 3em;
		}
}

.payment .contents .inner p a {
		color: #FF0000;
}

.payment .contents .inner .list_box {
		margin-top: 92px;
}

@media screen and (max-width: 768px) {
		.payment .contents .inner .list_box {
				margin-top: 40px;
		}
}

.payment .contents .inner .list_box h4 {
		font-size: 1.6rem;
		border-bottom: 2px dotted #3C3C3C;
		padding-bottom: 34px;
		text-align: center;
}

@media screen and (max-width: 768px) {
		.payment .contents .inner .list_box h4 {
				font-size: 1.2rem;
		}
}

.payment .contents .inner .list_box .inner_text {
		text-align: left;
		margin-top: 42px;
}

@media screen and (max-width: 768px) {
		.payment .contents .inner .list_box .inner_text {
				margin-top: 24px;
		}
}

.payment .contents .inner .list_box .inner_text h4 {
		text-align: center;
}

.payment .contents .inner .list_box .inner_text p {
		text-align: left;
}

.payment .contents .inner .list_box .inner_text p span {
		font-weight: bold;
}

.payment .contents .inner .list_box .inner_text p .red {
		color: #FF0000;
}

.payment .contents .inner .list_box .inner_text p a {
		display: inline-block;
		text-indent: 0;
		color: #FF0000;
}

.payment .contents .inner .list_box .inner_text p a:hover {
		opacity: .6;
}

.payment .contents .inner .list_box .inner_text .list_1em li {
		text-align: left;
		padding-left: 2em;
		text-indent: -2em;
}

.payment .contents .inner .list_box .inner_text .list_1em li:not(:first-child) {
		margin-top: 1em;
}

.payment .contents .inner .list_box .inner_text .list_1em li a {
		display: inline-block;
		text-indent: 0;
		color: #FF0000;
}

.payment .contents .inner .list_box .inner_text ul li {
		line-height: 1.53;
}

.payment .contents .inner .list_box .inner_text ul li span {
		font-weight: bold;
}

.payment .contents .inner .list_box .inner_text ul li a {
		color: #FF0000;
}

.payment .contents .inner .list_box .inner_text h5 {
		font-weight: bold;
}

.payment .contents .inner .list_box .inner_text .list_top {
		margin-top: 42px;
}

.payment .contents .inner .list_box .inner_text .top_1em {
		margin-top: 1em;
}

.payment .contents .inner .list_box .inner_text .top_2em {
		margin-top: 2em;
}

.payment .contents .inner .list_box .inner_text .top_3em {
		margin-top: 3em;
}

.payment .contents .inner .curtion {
		margin-top: 94px;
}

.payment .contents .btn {
		max-width: 393px;
		width: 100%;
		margin: 82px auto 0;
		text-align: center;
		border: none;
}

.payment .contents .btn:hover {
		background-color: transparent;
}

@media screen and (max-width: 768px) {
		.payment .contents .btn {
				margin-top: 24px;
				width: 90%;
		}
}

.payment .contents .btn a {
		background-color: #4B158A;
		border: 1px solid #4B158A;
		display: block;
		padding: 16px 0;
		color: #fff;
		transition: all .6s;
}

.payment .contents .btn a:hover {
		background-color: #fff;
		color: #4B158A;
}

.payment .cancell_list {
		margin-top: 120px;
}

@media screen and (max-width: 768px) {
		.payment .cancell_list {
				margin-top: 60px;
		}
}

.schedule {
		padding-top: 129px;
		letter-spacing: 0.1em;
}

@media screen and (max-width: 768px) {
		.schedule {
				padding-top: 70px;
		}
}

.schedule .contents {
		text-align: center;
}

.schedule .contents .ttl {
		font-family: "Marcellus", serif;
		font-weight: 400;
		font-size: 3.6rem;
		border-bottom: 1px solid #000000;
		padding-bottom: 10px;
		display: inline-block;
}

@media screen and (max-width: 768px) {
		.schedule .contents .ttl {
				font-size: 2.1rem;
		}
}

.schedule .contents h3 {
		font-family: "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "MS PMincho", sans-serif;
		font-weight: 400;
		font-size: 1.6rem;
		margin-top: 26px;
}

@media screen and (max-width: 768px) {
		.schedule .contents h3 {
				font-size: 1.2rem;
		}
}

.schedule .contents .inner {
		max-width: 1080px;
		width: 100%;
		margin: 97px auto 0;
}

@media screen and (max-width: 768px) {
		.schedule .contents .inner {
				margin-top: 40px;
		}
}

.schedule .contents .inner .service_nav li {
		font-size: 1.4rem;
		background-color: #44B5C3;
		padding: 10px 0px;
		margin: 8px auto;
		text-align: center;
		width: 400px;
}

@media screen and (max-width: 768px) {
		.schedule .contents .inner .service_nav li {
				width: 90%;
				font-size: 1.2rem;
		}
}

.schedule .contents .inner .service_nav li:nth-child(2) {
		background-color: #FAA300;
}

.schedule .contents .inner .service_nav li:nth-child(3) {
		background-color: #FDAFC4;
}

.schedule .contents .inner .service_nav li a {
		display: block;
		color: #fff;
}

.schedule .contents .inner .list_box h3 {
		text-align: center;
		letter-spacing: 0.1em;
		font-weight: 400;
}

.schedule .contents .inner .list_box h3 span {
		display: block;
}

.schedule .contents .inner .list_box h3 .en {
		font-family: "Optima", "Roman", sans-serif;
		font-size: 2.8rem;
}

@media screen and (max-width: 768px) {
		.schedule .contents .inner .list_box h3 .en {
				font-size: 1.8rem;
		}
}

.schedule .contents .inner .list_box h3 .ja {
		font-family: "Noto Serif JP", serif;
		font-size: 1.6rem;
}

@media screen and (max-width: 768px) {
		.schedule .contents .inner .list_box h3 .ja {
				font-size: 1.2rem;
		}
}

.schedule .contents .inner .list_box h3 .ja::before, .schedule .contents .inner .list_box h3 .ja::after {
		content: none;
}

.schedule .contents .inner .list_box .inner_text {
		margin-top: 59px;
}

@media screen and (max-width: 768px) {
		.schedule .contents .inner .list_box .inner_text {
				margin-top: 24px;
		}
}

.schedule .contents .inner .list_box .inner_text:nth-of-type(n+2) .online {
		margin-top: 120px;
}

@media screen and (max-width: 768px) {
		.schedule .contents .inner .list_box .inner_text:nth-of-type(n+2) .online {
				margin-top: 60px;
		}
}

.schedule .contents .inner .list_box .inner_text .online h4 {
		font-family: "Noto Sans JP", sans-serif;
		font-weight: bold;
		font-size: 1.7rem;
		color: #fff;
		text-align: center;
		line-height: 1;
		padding: 11px 0;
}

@media screen and (max-width: 768px) {
		.schedule .contents .inner .list_box .inner_text .online h4 {
				font-size: 1.4rem;
		}
}

.schedule .contents .inner .list_box .inner_text .online h4.green {
		background-color: #44B5C3;
}

.schedule .contents .inner .list_box .inner_text .online h4.yellow {
		background-color: #FAA300;
}

.schedule .contents .inner .list_box .inner_text .online .online_list {
		position: relative;
		margin-top: 24px;
}

@media screen and (max-width: 768px) {
		.schedule .contents .inner .list_box .inner_text .online .online_list {
				margin-top: 12px;
		}
}

.schedule .contents .inner .list_box .inner_text .online .online_list .deadline {
		font-size: 2rem;
		position: absolute;
		right: 0;
		top: 0px;
		font-family: "Noto Sans JP", sans-serif;
		color: #C34444;
		border: 2px solid #C34444;
		padding: 12px 6px;
		text-align: left;
		box-shadow: 0 3px 6px rgba(0, 0, 0, 0.6);
}

@media screen and (max-width: 768px) {
		.schedule .contents .inner .list_box .inner_text .online .online_list .deadline {
				font-size: 1.4rem;
				position: static;
				width: 90%;
				margin: 0 auto 24px;
		}
}

.schedule .contents .inner .list_box .inner_text .online .online_list h5 {
		font-family: "Noto Serif JP", serif;
		font-size: 2rem;
		color: #3c3c3c;
		font-weight: 500;
		letter-spacing: 0.1em;
		text-align: left;
		margin-left: 22px;
}

@media screen and (max-width: 768px) {
		.schedule .contents .inner .list_box .inner_text .online .online_list h5 {
				font-size: 1.6rem;
		}
}

.schedule .contents .inner .list_box .inner_text .online .online_list .details {
		text-align: left;
		margin-left: 22px;
		font-family: "Noto Serif JP", serif;
		letter-spacing: 0.1em;
		font-weight: 500;
		color: #3c3c3c;
		margin-top: 10px;
}

.schedule .contents .inner .list_box .inner_text .online .online_list .details li dl {
		display: flex;
		font-size: 1.6rem;
}

.schedule .contents .inner .list_box .inner_text .online .online_list .details li dl dt {
		min-width: 54px;
}

.schedule .contents .inner .list_box .inner_text .online .online_list .time_list {
		margin-top: 16px;
		font-family: "Noto Sans JP", sans-serif;
		font-weight: 400;
		letter-spacing: 0.1em;
		color: #3c3c3c;
}

.schedule .contents .inner .list_box .inner_text .online .online_list .time_list li {
		padding: 6px 22px;
}

.schedule .contents .inner .list_box .inner_text .online .online_list .time_list li dl {
		display: flex;
		justify-content: flex-start;
		font-size: 1.7rem;
}

.schedule .contents .inner .list_box .inner_text .online .online_list .time_list.green li:nth-child(odd) {
		background-color: #E7F6F7;
}

.schedule .contents .inner .list_box .inner_text .online .online_list .time_list.green li:nth-child(even) {
		background-color: #F2FAFB;
}

.schedule .contents .inner .list_box .inner_text .online .online_list .time_list.yellow li:nth-child(odd) {
		background-color: #FFF3DE;
}

.schedule .contents .inner .list_box .inner_text .online .online_list .time_list.yellow li:nth-child(even) {
		background-color: #FFF9ED;
}

.schedule .contents .inner .list_box .inner_text .online .online_list .text__area {
		text-align: left;
		padding: 0 1em;
		font-family: "Noto Sans JP", sans-serif;
		margin-top: 2em;
		line-height: 2;
}

@media screen and (max-width: 768px) {
		.schedule .contents .inner .list_box .inner_text .online .online_list .text__area {
				font-size: 1.4rem;
		}
}

.schedule .contents .inner .list_box .inner_text .online .online_list .text__area a {
		display: inline-block;
		color: #4B158A;
		border-bottom: 2px solid #4B158A;
		line-height: 1;
		padding-bottom: 2px;
}

.schedule .contents .inner .list_box .inner_text .face {
		margin-top: 51px;
}

@media screen and (max-width: 768px) {
		.schedule .contents .inner .list_box .inner_text .face {
				margin-top: 24px;
		}
}

.schedule .contents .inner .list_box .inner_text .face h4 {
		font-family: "Noto Sans JP", sans-serif;
		font-weight: bold;
		font-size: 1.7rem;
		color: #fff;
		text-align: center;
		line-height: 1;
		padding: 11px 0;
		background-color: #8E8E8E;
}

@media screen and (max-width: 768px) {
		.schedule .contents .inner .list_box .inner_text .face h4 {
				font-size: 1.4rem;
		}
}

.schedule .contents .inner .list_box .inner_text .face .face_list {
		margin-top: 40px;
		text-align: left;
}

@media screen and (max-width: 768px) {
		.schedule .contents .inner .list_box .inner_text .face .face_list {
				margin-top: 24px;
		}
}

.schedule .contents .inner .list_box .inner_text .face .face_list h5 {
		font-family: "Noto Serif JP", serif;
		font-size: 2rem;
		color: #3c3c3c;
		font-weight: 500;
		letter-spacing: 0.1em;
		text-align: left;
		margin-left: 22px;
}

@media screen and (max-width: 768px) {
		.schedule .contents .inner .list_box .inner_text .face .face_list h5 {
				font-size: 1.6rem;
		}
}

.schedule .contents .inner .list_box .inner_text .face .face_list .details {
		text-align: left;
		margin-left: 22px;
		font-family: "Noto Serif JP", serif;
		letter-spacing: 0.1em;
		font-weight: 500;
		color: #3c3c3c;
		margin-top: 10px;
}

.schedule .contents .inner .list_box .inner_text .face .face_list .details li dl {
		display: flex;
		font-size: 1.6rem;
}

.schedule .contents .inner .list_box .inner_text .face .face_list .details li dl dt {
		min-width: 54px;
}

.schedule .contents .inner .list_box .inner_text .face .face_list .time_list {
		margin-top: 16px;
		font-family: "Noto Sans JP", sans-serif;
		font-weight: 400;
		letter-spacing: 0.1em;
		color: #3c3c3c;
}

.schedule .contents .inner .list_box .inner_text .face .face_list .time_list li {
		padding: 6px 22px;
}

.schedule .contents .inner .list_box .inner_text .face .face_list .time_list li dl {
		display: flex;
		justify-content: flex-start;
		font-size: 1.7rem;
}

.schedule .contents .inner .list_box .inner_text .face .face_list .time_list.gray li:nth-child(odd) {
		background-color: #cdcdcd;
}

.schedule .contents .inner .list_box .inner_text .face .face_list .time_list.gray li:nth-child(even) {
		background-color: #e3e3e3;
}

.schedule .contents .inner .list_box .inner_text .face .face_list p {
		font-family: "Noto Sans JP", sans-serif;
		font-weight: 400;
		font-size: 1.7rem;
		line-height: 1.53;
		text-align: left;
		margin-left: 22px;
		margin-top: 16px;
}

@media screen and (max-width: 768px) {
		.schedule .contents .inner .list_box .inner_text .face .face_list p {
				font-size: 1.1rem;
				padding: 0 18px;
		}
}

.schedule .contents .inner .btn__box {
		margin-top: 74px;
}

@media screen and (max-width: 768px) {
		.schedule .contents .inner .btn__box {
				margin-top: 40px;
		}
}

.schedule .contents .inner .btn__box .schdule__btn {
		display: flex;
		justify-content: center;
		gap: 120px;
}

@media screen and (max-width: 768px) {
		.schedule .contents .inner .btn__box .schdule__btn {
				gap: 16px;
		}
		.schedule .contents .inner .btn__box .schdule__btn .btn {
				width: 42%;
				font-size: 1.4rem;
		}
}

.schedule .contents .inner .btn__box .service__btn {
		max-width: 394px;
		width: 100%;
		display: block;
		border: 1px solid #4B158A;
		background-color: #4B158A;
		border-radius: 0;
		margin: 80px auto 0;
}

@media screen and (max-width: 768px) {
		.schedule .contents .inner .btn__box .service__btn {
				width: 80%;
				margin-top: 40px;
		}
}

.schedule .contents .inner .btn__box .service__btn:hover {
		background-color: #fff;
}

.schedule .contents .inner .btn__box .service__btn:hover a {
		color: #4B158A;
}

.schedule .contents .inner .btn__box .service__btn a {
		color: #ffffff;
		padding: 16px 0;
}

.schedule .contents .inner .master {
		margin-top: 201px;
}

@media screen and (max-width: 768px) {
		.schedule .contents .inner .master {
				margin-top: 60px;
		}
}

.schedule .contents .inner #other h3 {
		color: #FDAFC4;
}

.schedule .contents .inner #other .btn--pink {
		max-width: 680px;
		width: 100%;
		margin: 40px auto 120px;
		display: block;
		border-radius: 0;
		background-color: #FDAFC4;
		border: 1px solid #FDAFC4;
}

.schedule .contents .inner #other .btn--pink:hover {
		background-color: #fff;
}

.schedule .contents .inner #other .btn--pink:hover a {
		color: #FDAFC4;
}

@media screen and (max-width: 768px) {
		.schedule .contents .inner #other .btn--pink {
				width: 80%;
				margin-bottom: 60px;
		}
}

.schedule .contents .inner #other .btn--pink a {
		padding: 16px 0;
		color: #fff;
}

@media screen and (max-width: 768px) {
		.page-id-162 .inner_form {
				padding: 0 16px;
		}
}

.page-id-162 .inner_form h2 {
		margin-top: 40px;
}

@media screen and (max-width: 768px) {
		.page-id-162 .inner_form h2 {
				font-size: 1.8rem;
		}
}

.page-id-162 .inner_form p {
		margin-top: 24px;
		line-height: 1.8;
}

@media screen and (max-width: 768px) {
		.page-id-162 .inner_form p {
				font-size: 1.4rem;
		}
}

.page-id-162 .inner_form ol {
		margin-top: 8px;
		padding-left: 1em;
}

@media screen and (max-width: 768px) {
		.page-id-162 .inner_form ol {
				font-size: 1.4rem;
		}
}

.page-id-162 .inner_form ol li {
		line-height: 2;
}

@media screen and (max-width: 768px) {
		.page-id-167 {
				padding: 0 16px;
		}
}

.page-id-167 table {
		border: 1px solid #d8d8d8;
}

@media screen and (max-width: 768px) {
		.page-id-167 table {
				padding: 0 16px;
		}
}

.page-id-167 table tr th {
		width: 210px;
		padding: 12px 4px;
		background-color: #efefef;
		border: 1px solid #d8d8d8;
}

@media screen and (max-width: 768px) {
		.page-id-167 table tr th {
				width: 100%;
				display: block;
		}
}

.page-id-167 table tr td {
		border: 1px solid #d8d8d8;
		padding-left: 8px;
		font-size: 1.4rem;
		line-height: 1.8;
}

@media screen and (max-width: 768px) {
		.page-id-167 table tr td {
				display: block;
				width: 100%;
				padding: 12px 4px;
		}
}

.page-id-167 table tr td a {
		display: inline-block;
		color: #C34444;
}

@media screen and (max-width: 768px) {
		.page .event .session_massage {
				margin-top: 0;
		}
}

.event {
		width: 100%;
		margin: 0 auto;
		text-align: center;
}

.event .ttl {
		font-family: "Marcellus", serif;
		font-size: 3.6rem;
		font-weight: 400;
		letter-spacing: 0.1em;
		margin-top: 55px;
		display: inline-block;
		border-bottom: 1px solid #000;
		color: #000;
		padding-bottom: 10px;
}

@media screen and (max-width: 768px) {
		.event .ttl {
				font-size: 2.1rem;
		}
}

.event .event__list {
		margin: 120px auto 0;
		text-align: left;
		display: flex;
		flex-wrap: wrap;
		max-width: 1160px;
		width: 100%;
}

@media screen and (max-width: 768px) {
		.event .event__list {
				margin-top: 40px;
		}
}

.event .event__list li {
		width: 33.333%;
		padding: 40px 30px 24px;
		box-sizing: border-box;
		position: relative;
}

@media screen and (max-width: 768px) {
		.event .event__list li {
				width: 50%;
				padding: 18px 8px 12px;
		}
}

.event .event__list li:nth-child(odd) {
		background-color: #E7F6F7;
}

.event .event__list li:nth-child(even) {
		background-color: #F2FAFB;
}

.event .event__list li a {
		line-height: 2;
}

.event .event__list li a:hover {
		opacity: .4;
}

.event .event__list li .new {
		font-size: 1.4rem;
		position: absolute;
		top: 6px;
		right: 30px;
		color: #4B158A;
}

@media screen and (max-width: 768px) {
		.event .event__list li .new {
				font-size: 1.4rem;
				top: 28px;
		}
}

.event .event__list li .cat-area {
		border-top: 1px solid #4B158A;
		border-bottom: 1px solid #4B158A;
		font-family: "Noto Serif JP", serif;
		font-weight: 400;
		letter-spacing: 0.1em;
		color: #4B158A;
		padding: 8px 4px;
		line-height: 1;
		display: flex;
		justify-content: space-between;
		align-items: center;
}

@media screen and (max-width: 768px) {
		.event .event__list li .cat-area {
				flex-direction: column-reverse;
				align-items: flex-start;
		}
}

@media screen and (max-width: 768px) {
		.event .event__list li .cat-area .time {
				font-size: 1.2rem;
				margin-bottom: 8px;
		}
}

@media screen and (max-width: 768px) {
		.event .event__list li .cat-area h3 {
				font-size: 1.4rem;
		}
}

.event .event__list li .cat-area .en {
		font-size: 1.8rem;
		margin-right: 0.4em;
}

.event .event__list li h2 {
		font-family: "Noto Serif JP", serif;
		font-weight: 500;
		font-size: 1.8rem;
		line-height: 1.73;
		color: #4B158A;
		margin-top: 27px;
}

@media screen and (max-width: 768px) {
		.event .event__list li h2 {
				font-size: 1.4rem;
		}
}

.event .event__list li .text {
		font-size: 1.4rem;
}

@media screen and (max-width: 768px) {
		.event .event__list li .text {
				font-size: 1.2rem;
		}
}

.event .pagination {
		margin-top: 40px;
}

@media screen and (max-width: 768px) {
		.event .pagination {
				margin-bottom: 80px;
		}
}

@media screen and (max-width: 768px) {
		.event .pagination .next {
				font-size: 1.2rem;
		}
}

@media screen and (max-width: 768px) {
		.event .pagination .prev {
				font-size: 1.2rem;
		}
}

.event .pagination .page-numbers {
		display: flex;
		justify-content: center;
		align-items: center;
}

.event .pagination .page-numbers .page-numbers {
		padding: 8px 16px;
		background-color: #F2EEF7;
}

@media screen and (max-width: 768px) {
		.event .pagination .page-numbers .page-numbers {
				font-size: 1.2rem;
		}
}

.event .pagination .page-numbers .page-numbers a:hover {
		background-color: #FBFAFD;
}

.event .pagination .page-numbers .current {
		background-color: #4B158A;
		color: #fff;
}

.session__contents {
		margin-top: 120px;
}

@media screen and (max-width: 768px) {
		.session__contents {
				margin-top: 40px;
		}
}

.single_event .single_massage .inner {
		text-align: center;
}

.single_event .single_contents {
		text-align: left;
}

.single_event .event__inner {
		max-width: 900px;
		width: 100%;
		margin: 80px auto 0;
		text-align: left;
		padding: 0 24px;
}

.single_event .event__inner .ttlarea {
		margin-bottom: 40px;
}

.single_event .event__inner .ttlarea .event__ttl {
		font-size: 2.4rem;
}

@media screen and (max-width: 768px) {
		.single_event .event__inner .ttlarea .event__ttl {
				font-size: 1.6rem;
		}
}

.single_event .btn {
		margin: 40px auto;
}

.error404 main {
		padding-top: 92px;
}

.error404 main .content-box {
		max-width: 740px;
		width: 100%;
		margin: 40px auto 0;
		text-align: center;
}

@media screen and (max-width: 768px) {
		.error404 main .content-box h2 {
				font-size: 2rem;
		}
}

.error404 main .content-box p {
		margin-top: 40px;
}

@media screen and (max-width: 768px) {
		.error404 main .content-box p {
				font-size: 1.4rem;
		}
}

.under {
		font-size: 2.4rem;
}

.page-id-2395 {
		font-family: "Optima", "Roman", sans-serif;
}

.page-id-2395 header {
		background-color: transparent;
}

.page-id-2395 header .inner .menu nav ul li a {
		color: #fff;
}

.page-template-page-top header .inner .menu nav ul .has-child .sub-menu {
		background-color: transparent;
}

.page-id-2395 header .inner .menu nav .lang li:first-child:after {
		color: #fff;
		margin-top: 0;
		margin-right: 4px;
}

.page-id-2395 .main_visual {
		position: relative;
		padding-top: 0;
}

.page-id-2395 .main_visual .slickslider {
		width: 100%;
		position: relative;
		margin-top: 0;
}

.page-id-2395 .main_visual .slickslider .slider .slick-slide figure {
		position: relative;
}

.page-id-2395 .main_visual .slickslider .slider .slick-slide figure img {
		width: 100%;
}

.page-id-2395 .main_visual .slickslider .slider .slick-slide figure figcaption {
		position: absolute;
		max-width: 1080px;
		width: 100%;
		left: 50%;
		transform: translate(-50%, 0%);
		color: #fff;
		font-family: "Noto Serif JP", serif;
		font-weight: 400;
		font-size: 3rem;
		letter-spacing: 0.3em;
		line-height: 2;
}

@media screen and (max-width: 768px) {
		.page-id-2395 .main_visual .slickslider .slider .slick-slide figure figcaption {
				font-size: 1.8rem;
				padding: 0 16px;
		}
}

.page-id-2395 .main_visual .slickslider .slider .slick-slide:first-child figure figcaption {
		max-width: 223px;
		width: 100%;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
}

.page-id-2395 .main_visual .slickslider .slider .slick-slide:nth-child(2) figure figcaption, .page-id-2395 .main_visual .slickslider .slider .slick-slide:nth-child(3) figure figcaption {
		top: 231px;
}

.page-id-2395 .main_visual .slickslider .slider .slick-slide:nth-child(4) figure figcaption, .page-id-2395 .main_visual .slickslider .slider .slick-slide:nth-child(5) figure figcaption {
		bottom: 96px;
}

.page-id-2395 .main_visual .btnarea {
		max-width: 750px;
		width: 100%;
		margin: 17px auto 0;
}

.page-id-2395 .main_visual .btnarea .btn a {
		font-family: "Optima", "Roman", sans-serif;
}

.page-id-2395 .main_visual .news {
		max-width: 750px;
		width: 100%;
		margin: 17px auto 0;
		font-family: "Optima", "Roman", sans-serif;
		font-weight: 400;
		font-size: 1.5rem;
		color: #3c3c3c;
		letter-spacing: 0.1em;
}

@media screen and (max-width: 768px) {
		.page-id-2395 .main_visual .news {
				font-size: 1.3rem;
				padding: 0 16px;
		}
}

.page-id-2395 .main_visual .news a {
		display: flex;
		justify-content: flex-start;
		align-items: flex-start;
}

.page-id-2395 .main_visual .news p.time {
		margin-right: 1em;
}

.page-id-2395 .main_visual .news p.time time {
		font-family: "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "MS PMincho", sans-serif;
}

.page-id-2395 .main_visual .news h2 {
		margin-left: 22px;
		font-weight: 400;
		font-size: 1.5rem;
		letter-spacing: 0.1em;
}

@media screen and (max-width: 768px) {
		.page-id-2395 .main_visual .news h2 {
				font-size: 1.3rem;
		}
}

.page-id-2395 .top_what {
		margin-top: 84px;
		text-align: center;
}

.page-id-2395 .top_what .ttl {
		font-family: "Marcellus", serif;
		font-weight: 400;
		font-size: 4.3rem;
		letter-spacing: 0.1em;
		color: #3c3c3c;
}

@media screen and (max-width: 768px) {
		.page-id-2395 .top_what .ttl {
				font-size: 2.7rem;
				border-bottom: 1px solid #3C3C3C;
				padding-bottom: 2px;
				display: inline-block;
		}
}

.page-id-2395 .top_what .inner {
		color: #1F1F1F;
		margin-top: 60px;
}

@media screen and (max-width: 768px) {
		.page-id-2395 .top_what .inner {
				margin-top: 46px;
		}
}

.page-id-2395 .top_what .inner p {
		line-height: 2.125;
		font-size: 1.6rem;
		font-family: "Optima", "Roman", sans-serif;
		font-weight: 400;
		margin-top: 1em;
}

@media screen and (max-width: 768px) {
		.page-id-2395 .top_what .inner p {
				font-size: 1.4rem;
		}
}

.page-id-2395 .top_what .inner figure {
		max-width: 323px;
		width: 100%;
		margin: 40px auto 40px;
}

@media screen and (max-width: 768px) {
		.page-id-2395 .top_what .inner figure {
				max-width: 272px;
				margin-top: 24px auto;
		}
}

.page-id-2395 .top_mission {
		margin-top: 132px;
}

@media screen and (max-width: 768px) {
		.page-id-2395 .top_mission {
				margin-top: 70px;
		}
}

.page-id-2395 .top_mission .inner {
		display: flex;
		justify-content: flex-end;
		align-items: center;
}

@media screen and (max-width: 768px) {
		.page-id-2395 .top_mission .inner {
				flex-direction: column;
				justify-content: flex-start;
		}
}

.page-id-2395 .top_mission .inner .inner_text {
		background-color: rgba(142, 142, 142, 0.08);
		padding: 55px 69px 55px 40px;
}

@media screen and (max-width: 768px) {
		.page-id-2395 .top_mission .inner .inner_text {
				padding: 39px 18px 178px;
		}
}

.page-id-2395 .top_mission .inner .inner_text .ttl {
		font-family: "Marcellus", serif;
		font-weight: 400;
		font-size: 3.8rem;
		letter-spacing: 0.12em;
}

@media screen and (max-width: 768px) {
		.page-id-2395 .top_mission .inner .inner_text .ttl {
				font-size: 2.1rem;
		}
}

.page-id-2395 .top_mission .inner .inner_text .text {
		margin-top: 45px;
		max-width: 450px;
		width: 100%;
		font-size: 1.5rem;
		font-family: "Optima", "Roman", sans-serif;
		font-weight: 400;
		letter-spacing: 0.16em;
		line-height: 2.1;
		text-align: left;
}

@media screen and (max-width: 768px) {
		.page-id-2395 .top_mission .inner .inner_text .text {
				font-size: 1.3rem;
		}
}

.page-id-2395 .top_mission .inner .inner_text .btn {
		margin-top: 81px;
		font-family: "Optima", "Roman", sans-serif;
}

@media screen and (max-width: 768px) {
		.page-id-2395 .top_mission .inner .inner_text .btn {
				margin-top: 35px;
				font-size: 1.1rem;
		}
}

.page-id-2395 .top_mission .inner figure {
		max-width: 666px;
		width: 100%;
}

@media screen and (max-width: 768px) {
		.page-id-2395 .top_mission .inner figure {
				max-width: 236px;
				margin-left: auto;
				margin-top: -120px;
		}
}

.page-id-2395 .top_bg_01 {
		margin-top: 141px;
}

@media screen and (max-width: 768px) {
		.page-id-2395 .top_bg_01 {
				margin-top: 64px;
		}
}

.page-id-2395 .top_about {
		max-width: 1110px;
		width: 100%;
		margin: 75px auto 0;
		text-align: center;
}

@media screen and (max-width: 768px) {
		.page-id-2395 .top_about {
				margin-top: 44px;
		}
}

.page-id-2395 .top_about .ttl {
		font-family: "Marcellus", serif;
		font-weight: 400;
		font-size: 3.8rem;
		letter-spacing: 0.1em;
}

@media screen and (max-width: 768px) {
		.page-id-2395 .top_about .ttl {
				font-size: 2.7rem;
				border-bottom: 1px solid #3C3C3C;
				padding-bottom: 2px;
				display: inline-block;
		}
}

.page-id-2395 .top_about .inner {
		margin-top: 45px;
}

@media screen and (max-width: 768px) {
		.page-id-2395 .top_about .inner {
				margin-top: 39px;
		}
}

.page-id-2395 .top_about .inner .text {
		margin-top: 45px;
		font-size: 1.5rem;
		font-family: "Optima", "Roman", sans-serif;
		font-weight: 400;
		letter-spacing: 0.16em;
		line-height: 2.1;
		padding: 0 16px;
}

@media screen and (max-width: 768px) {
		.page-id-2395 .top_about .inner .text {
				font-size: 1.3rem;
				padding: 0 16px;
		}
}

.page-id-2395 .top_about .inner .btn {
		margin: 64px auto 0;
		font-family: "Optima", "Roman", sans-serif;
}

@media screen and (max-width: 768px) {
		.page-id-2395 .top_about .inner .btn {
				margin-top: 36px;
				width: 148px;
				font-size: 1.1rem;
		}
}

.page-id-2395 .top_about .inner figure {
		max-width: 319px;
		width: 100%;
		margin-top: 64px;
}

@media screen and (max-width: 768px) {
		.page-id-2395 .top_about .inner figure {
				max-width: 205px;
		}
}

.page-id-2395 .top_profile {
		max-width: 1080px;
		width: 100%;
		margin: 132px auto 0;
}

@media screen and (max-width: 768px) {
		.page-id-2395 .top_profile {
				margin-top: 60px;
		}
}

.page-id-2395 .top_profile .inner {
		max-width: 1017px;
		width: 100%;
		display: flex;
		justify-content: space-between;
}

.page-id-2395 .top_profile .inner figure {
		width: 71.2%;
}

@media screen and (max-width: 768px) {
		.page-id-2395 .top_profile .inner figure {
				width: 57%;
		}
}

.page-id-2395 .top_profile .inner .inner_text {
		display: flex;
		flex-direction: column;
		justify-content: space-between;
}

.page-id-2395 .top_profile .inner .inner_text dl {
		-ms-writing-mode: tb-rl;
		writing-mode: vertical-rl;
		font-family: "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "MS PMincho", sans-serif;
		font-size: 1.4rem;
		font-weight: 400;
		margin-right: 54px;
		text-align: left;
}

@media screen and (max-width: 768px) {
		.page-id-2395 .top_profile .inner .inner_text dl {
				font-size: 1.1rem;
				margin-right: 33px;
		}
}

.page-id-2395 .top_profile .inner .inner_text dl dt {
		letter-spacing: 0.2em;
}

.page-id-2395 .top_profile .inner .inner_text dl dd {
		margin-top: 0;
}

.page-id-2395 .top_profile .inner .inner_text dl dd .name_ja {
		font-size: 4rem;
		letter-spacing: 0.6em;
}

@media screen and (max-width: 768px) {
		.page-id-2395 .top_profile .inner .inner_text dl dd .name_ja {
				font-size: 2.4rem;
				padding: 0 22px;
				display: block;
		}
}

.page-id-2395 .top_profile .inner .inner_text dl dd .name_en {
		font-family: "Optima", "Roman", sans-serif;
		display: block;
		letter-spacing: 0.2em;
		font-size: 1.4rem;
}

.page-id-2395 .top_profile .btn {
		width: 148px;
		font-size: 1.1rem;
		margin: 44px auto 0;
		font-family: "Optima", "Roman", sans-serif;
}

.page-id-2395 .top_service {
		margin-top: 134px;
		padding: 67px 0 52px;
		background: #f6f6f6;
		background: -moz-linear-gradient(left, #f6f6f6 0%, #f6f6f6 80%, #ffffff 80%, #ffffff 100%);
		background: -webkit-linear-gradient(left, #f6f6f6 0%, #f6f6f6 80%, #ffffff 80%, #ffffff 100%);
		background: linear-gradient(to right, #f6f6f6 0%, #f6f6f6 80%, #ffffff 80%, #ffffff 100%);
		filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f6f6f6', endColorstr='#ffffff',GradientType=1 );
}

@media screen and (max-width: 768px) {
		.page-id-2395 .top_service {
				margin-top: 53px;
				background: #f6f6f6;
				padding: 42px 0px 40px;
		}
}

.page-id-2395 .top_service .inner {
		max-width: 1180px;
		width: 100%;
		margin-left: auto;
		display: flex;
		justify-content: space-between;
}

@media screen and (max-width: 768px) {
		.page-id-2395 .top_service .inner {
				flex-direction: column;
		}
}

.page-id-2395 .top_service .inner .inner_text {
		max-width: 550px;
		width: 100%;
}

@media screen and (max-width: 768px) {
		.page-id-2395 .top_service .inner .inner_text {
				padding: 0 18px;
		}
}

.page-id-2395 .top_service .inner .inner_text .ttl {
		font-family: "Marcellus", serif;
		font-weight: 400;
		font-size: 3.8rem;
		letter-spacing: 0.12em;
		color: #3c3c3c;
}

@media screen and (max-width: 768px) {
		.page-id-2395 .top_service .inner .inner_text .ttl {
				font-size: 2.1rem;
		}
}

.page-id-2395 .top_service .inner .inner_text h3 {
		width: 100%;
		margin: 12px auto;
		font-size: 1.6rem;
		font-family: "Optima", "Roman", sans-serif;
		font-weight: 400;
		text-align: left;
}

@media screen and (max-width: 768px) {
		.page-id-2395 .top_service .inner .inner_text h3 {
				width: 100%;
				font-size: 1.3rem;
		}
}

.page-id-2395 .top_service .inner .inner_text .top_service_list {
		margin-top: 40px;
		text-align: left;
}

.page-id-2395 .top_service .inner .inner_text .top_service_list li {
		font-family: "Optima", "Roman", sans-serif;
		font-weight: 400;
		font-size: 1.5rem;
		line-height: 2.13;
		color: #1F1F1F;
}

@media screen and (max-width: 768px) {
		.page-id-2395 .top_service .inner .inner_text .top_service_list li {
				font-size: 1.3rem;
		}
}

.page-id-2395 .top_service .inner .inner_text .btn_group {
		margin-top: 52px;
		display: flex;
		justify-content: flex-start;
}

@media screen and (max-width: 768px) {
		.page-id-2395 .top_service .inner .inner_text .btn_group {
				justify-content: center;
		}
}

.page-id-2395 .top_service .inner .inner_text .btn_group .btn {
		width: 196px;
		font-size: 1.4rem;
		font-family: "Optima", "Roman", sans-serif;
}

@media screen and (max-width: 768px) {
		.page-id-2395 .top_service .inner .inner_text .btn_group .btn {
				font-size: 1.1rem;
				width: 146px;
		}
}

.page-id-2395 .top_service .inner .inner_text .btn_group .btn:first-child {
		margin-right: 10px;
		font-family: "Optima", "Roman", sans-serif;
}

.page-id-2395 .top_service .inner .inner_text p {
		margin-top: 40px;
		font-size: 1.3rem;
		font-family: "Optima", "Roman", sans-serif;
		font-weight: 400;
		text-align: left;
}

.page-id-2395 .top_service .inner .inner_text .btn_2 {
		font-family: "Optima", "Roman", sans-serif;
		font-size: 1.6rem;
		max-width: 402px;
		width: 100%;
		background-color: #8E8E8E;
		border: 1px solid #8E8E8E;
		border-radius: 15px;
		padding: 4px 0;
		text-align: center;
		margin-top: 12px;
}

.page-id-2395 .top_service .inner .inner_text .btn_2:hover {
		background-color: #fff;
}

.page-id-2395 .top_service .inner .inner_text .btn_2:hover a {
		color: #8E8E8E;
}

.page-id-2395 .top_service .inner .inner_text .btn_2 a {
		color: #fff;
		display: block;
}

@media screen and (max-width: 768px) {
		.page-id-2395 .top_service .inner figure {
				margin-top: 36px;
				max-width: 236px;
		}
}

.page-id-2395 .top_bg_02 {
		margin-top: 132px;
}

@media screen and (max-width: 768px) {
		.page-id-2395 .top_bg_02 {
				margin-top: 40px;
		}
}

.page-id-2395 .top_voice {
		margin-top: 134px;
		padding: 67px 0 52px;
		background: #ffffff;
		background: -moz-linear-gradient(left, #ffffff 0%, #ffffff 20%, #f6f6f6 20%, #f6f6f6 100%);
		background: -webkit-linear-gradient(left, #ffffff 0%, #ffffff 20%, #f6f6f6 20%, #f6f6f6 100%);
		background: linear-gradient(to right, #ffffff 0%, #ffffff 20%, #f6f6f6 20%, #f6f6f6 100%);
		filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#f6f6f6',GradientType=1 );
}

@media screen and (max-width: 768px) {
		.page-id-2395 .top_voice {
				margin-top: 0;
				background: #f6f6f6;
				padding: 40px 0 52px;
		}
}

.page-id-2395 .top_voice .inner {
		max-width: 1160px;
		width: 100%;
		margin-right: auto;
		margin-left: 4.68%;
		display: flex;
}

@media screen and (max-width: 768px) {
		.page-id-2395 .top_voice .inner {
				flex-direction: column-reverse;
				margin-left: 0;
		}
}

.page-id-2395 .top_voice .inner figure {
		width: 45.25%;
}

@media screen and (max-width: 768px) {
		.page-id-2395 .top_voice .inner figure {
				margin-left: auto;
				max-width: 236px;
				width: 100%;
				margin-top: 24px;
		}
}

.page-id-2395 .top_voice .inner .inner_text {
		margin-left: 64px;
}

@media screen and (max-width: 768px) {
		.page-id-2395 .top_voice .inner .inner_text {
				margin-left: 0;
				padding: 0 18px;
		}
}

.page-id-2395 .top_voice .inner .inner_text .ttl {
		font-family: "Marcellus", serif;
		font-weight: 400;
		font-size: 3.8rem;
		letter-spacing: 0.12em;
		color: #3c3c3c;
}

@media screen and (max-width: 768px) {
		.page-id-2395 .top_voice .inner .inner_text .ttl {
				font-size: 2.1rem;
		}
}

.page-id-2395 .top_voice .inner .inner_text .text {
		margin-top: 40px;
		font-family: "Optima", "Roman", sans-serif;
		font-weight: 400;
		font-size: 1.5rem;
		line-height: 2.13;
		color: #1F1F1F;
		max-width: 500px;
		width: 100%;
		text-align: left;
}

@media screen and (max-width: 768px) {
		.page-id-2395 .top_voice .inner .inner_text .text {
				font-size: 1.3rem;
				margin-top: 24px;
		}
}

.page-id-2395 .top_voice .inner .inner_text .btn {
		margin-top: 52px;
		width: 196px;
		font-family: "Optima", "Roman", sans-serif;
}

@media screen and (max-width: 768px) {
		.page-id-2395 .top_voice .inner .inner_text .btn {
				margin-top: 24px;
				width: 146px;
				font-size: 1.1rem;
		}
}

.page-id-2395 .voice_illust {
		max-width: 1080px;
		width: 100%;
		margin: -24px auto 0;
}

.page-id-2395 .voice_illust figure {
		max-width: 350px;
		width: 100%;
		margin-left: auto;
}

@media screen and (max-width: 768px) {
		.page-id-2395 .voice_illust figure {
				max-width: 205px;
		}
}

.page-id-2395 .top_gallery {
		margin-top: 132px;
}

@media screen and (max-width: 768px) {
		.page-id-2395 .top_gallery {
				margin-top: 40px;
		}
}

.page-id-2395 .top_gallery .ttl {
		text-align: center;
		font-family: "Marcellus", serif;
		font-weight: 400;
		font-size: 3.6rem;
		letter-spacing: 0.1em;
		color: #000;
}

@media screen and (max-width: 768px) {
		.page-id-2395 .top_gallery .ttl {
				font-size: 2.1rem;
		}
}

.page-id-2395 .top_gallery .slider_gallery {
		margin-top: 60px;
}

@media screen and (max-width: 768px) {
		.page-id-2395 .top_gallery .slider_gallery {
				margin-top: 24px;
		}
}

.page-id-2395 .top_gallery .slider_gallery .slick-slide {
		padding: 0 13px;
}

@media screen and (max-width: 768px) {
		.page-id-2395 .top_gallery .slider_gallery .slick-slide {
				padding: 0 4px;
		}
}

.page-id-2395 .top_gallery .slider_gallery.sp {
		margin-top: 4px;
}

