@import url('https://fonts.googleapis.com/css2?family=Cinzel&display=swap');

body {
	/*font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";*/
	font-family: "游明朝 Medium", "Yu Mincho Medium", "YuMincho Medium", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", serif;
	font-feature-settings: "palt";
	line-height: 1.6;
	color: #fff;
	background-image: url('/common/images/bg.png');
	background-repeat: repeat;
	width: 100%;
	font-size: 14px;
}

a {
	display: block;
	color: #fff;
	text-decoration: none;
}

.table {
	display: table;
}

.cell {
	display: table-cell;
}

.row {
	display: table-row;
}

#main-header {
	width: 100%;
	z-index: 100;
	position: fixed;
	top: 0;
	background-color: rgba(0, 0, 0, 0.9);
	height: 120px;
}

#main-header #header {
	width: 1500px;
	height: 120px;
	margin: 0 auto;
	display: flex;
}

#main-header #header #logo {
	padding: 20px 0;
	width: 420px;
}

#main-header nav {
	width: 840px;
}

#main-header #nav {
	display: flex;
	padding: 10px 0;
	width: 100%;
}

#header-contact {
	height: 60px;
	width: 100%;
}

#main-header #nav li {
	padding: 0 0;
	color: #fff;
	border-right: 1px solid rgba(255, 255, 255, 0.2);
	text-align: center;
	display: flex;
	flex: 1;
	align-self: auto;
	min-width: 0;
	height: 40px;
}

#main-header #nav li a {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 1;
	color: #fff;
	text-decoration: none;
	text-align: center;
	word-break: break-all;
	box-sizing: border-box;
	font-size: 12px;
	letter-spacing: 1.5px;
}

#main-header #nav li a span {
	font-size: 12px;
}

#header-contact #open-time {
	font-size: 18px;
	color: #fff;
	display: flex;
	justify-content: center;
	align-items: center;
	height: 60px;
	/* 例: 高さを指定 */
}

#header-contact #open-time span {
	font-size: 22px;
}

#header-contact #open-time #line {
	background: #00b900;
	border-radius: 1px;
	color: #fff;
	font-size: 0.9rem;
	position: relative;
	line-height: 2;
	padding: 8px 28px;
	border-radius: 48px;
}

#top-mainvisual {
	background: url("/common/images/main-bg.jpg");
	background-size: cover;
	background-position: center top;
	height: 600px;
	width: 100%;
	padding-top: 120px;
}

#top-mainvisual-content {
	width: 800px;
	height: 480px;
	margin: 0 auto;
}

#breadcrumbs-box {
	width: 100%;
	height: 50px;
	line-height: 50px;
	background-color: #000;
	font-size: 12px;
	letter-spacing: 2px;
}

#breadcrumbs-box #breadcrumbs {
	width: 1000px;
	height: 50px;
	line-height: 50px;
	margin: 0 auto;
}

#main-section {
	width: 1000px;
	margin: 0 auto;
	background-color: rgba(0, 0, 0, 0.6);
	padding: 10px;
}

section h2 {
	width: 100%;
	color: #fff;
	text-align: center;
	padding: 10px 0;
	font-weight: normal;
}

section h2 span:first-child {
	display: block;
	font-size: 30px;
	width: 100%;
	margin: 4px auto 0 auto;
	border-bottom: 2px solid #304467;
	padding: 4px 0 10px 0;
	font-family: 'Noto Serif JP', serif;
}

section h2 span:last-child {
	display: block;
	margin: 4px auto;
	text-align: center;
	font-size: 14px;
}

#new-face-box {
	width: 100%;
	height: auto;
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(50%, 1fr));
}

#new-face-box li {
	width: 100%;
	height: auto;
	display: flex;
	flex-wrap: wrap;
	height: 200px;
	padding: 10px;
	margin-bottom: 20px;
}

#new-face-box li .new-face {
	padding: 10px;
	background-color: rgba(0, 0, 0, 1);
	border-radius: 5px;
	box-shadow: 0 0 1px 1px rgba(255, 255, 255, 0.1) inset;
	word-break: break-all;
	width: 100%;
}

.new-face-img {
	width: 135px;
	height: 180px;
}

.new-face-img img {
	width: 135px;
	height: 180px;
}

.new-face-text {
	width: 315px;
	padding-left: 15px;
	vertical-align: top;
}

.new-face-text .new-face-text-in {
	border-bottom: 1px solid #304467;
	height: 30px;
	line-height: 30px;
	font-weight: normal;
}

.new-face-text .new-face-text-in span {
	font-size: 13px;
	letter-spacing: 2px;
	padding-right: 10px;
	padding-left: 10px;
}

.new-face-text-comment {
	font-size: 13px;
	width: 100%;
	height: 120px;
	padding: 15px;
	letter-spacing: 2px;
	overflow: hidden;
}

#news-box {
	width: 100%;
	height: 300px;
	padding: 10px;
	background-color: rgba(0, 0, 0, 1);
	border-radius: 5px;
	box-shadow: 0 0 1px 1px rgba(255, 255, 255, 0.1) inset;
	word-break: break-all;
}

#news-box #news-title {
	width: 100%;
	height: 50px;
	line-height: 50px;
	font-size: 18px;
	font-weight: normal;
	border-bottom: 1px solid #304467;
	padding-left: 30px;
}

#news-box #news-title span {
	padding: 0 20px;
	font-size: 12px;
}

#news-box #news-contents {
	width: 100%;
	height: 250px;
	padding: 20px;
	overflow-y: auto;
}

#pickup-box {
	width: 100%;
	height: auto;
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(33%, 1fr));
}

#pickup-box li {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	height: auto;
	padding: 10px;
	margin-bottom: 20px;
}

#pickup-box li .pickup-box-inner {
	background-color: rgba(0, 0, 0, 1);
	border-radius: 5px;
	box-shadow: 0 0 1px 1px rgba(255, 255, 255, 0.1) inset;
	padding: 10px;
}

#pickup-box li .pickup-box-inner .pickup-box-inner-text {
	border-bottom: 1px solid #304467;
	height: 30px;
	line-height: 30px;
	font-weight: normal;
	text-align: center;
}

#pickup-box li .pickup-box-inner .pickup-box-inner-text span {
	padding: 0 10px;
	font-size: 12px;
}

#pickup-box li .pickup-box-inner .pickup-box-inner-text span.no-padding {
	padding: 0;
	font-size: 12px;
}



#event-box {
	width: 100%;
	height: auto;
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(100%, 1fr));
}

#event-box div {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	height: auto;
	padding: 10px;
	margin-bottom: 20px;
}


#schedule-box {
	width: 100%;
	height: auto;
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(33%, 1fr));
}

#schedule-box li {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	height: auto;
	padding: 10px;
	margin-bottom: 20px;
}

#schedule-box li .schedule-box-inner {
	background-color: rgba(0, 0, 0, 1);
	border-radius: 5px;
	box-shadow: 0 0 1px 1px rgba(255, 255, 255, 0.1) inset;
	padding: 10px;
}

#schedule-box li .schedule-box-inner .schedule-box-inner-text2 {
	border-bottom: 1px solid #304467;
	height: auto;
	line-height: 30px;
	font-weight: normal;
	text-align: center;
}

.other-box-inner-text2 .table {
	display: table;
	width: 100%;
	height: auto;
}

.other-box-inner-text2 .table .cell {
	display: table-cell;
	width: 50%;
	padding: 5px;
}

.other-box-inner-text2 .table .cell .inner {
	background-color: #304467;
	color: #ffffff;
	text-align: center;
}

.rank {
	width: 100%;
	height: auto;
	line-height: 50px;
}

.rank .rank-innner-1 {
	/*
	background-color: #304467;
	color: #ffffff;
	*/
	font-family: "游明朝 Medium", "Yu Mincho Medium", "YuMincho Medium", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", serif;
	font-weight: bold;
	color: #b79a87;
	text-align: center;
	font-size: 18px;
	letter-spacing: 1px;
	border: solid 1px #CCC;
	background-image: linear-gradient(150deg, #f9f2ed, #f9f2ed 31%, #e7d7cf 38%, #e7d7cf 43%, #fff5ed 51%, #fff5ed 54%, #ecddd4 61%, #ecddd4 65%, #ffffff 76%);
	text-shadow: 0 0 7px #ffffff, 0 0 7px #ffffff, 0 0 7px #ffffff, 0 0 7px #ffffff;
}

.rank .rank-innner-2 {
	/*
	background-color: #DF5286;
	color: #ffffff;
	*/
	font-family: "游明朝 Medium", "Yu Mincho Medium", "YuMincho Medium", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", serif;
	font-weight: bold;
	color: #7e7785;
	text-align: center;
	font-size: 18px;
	letter-spacing: 1px;
	border: solid 1px #CCC;
	background-image: linear-gradient(150deg, #f4f3f5, #f4f3f5 31%, #dcdbdd 38%, #dcdbdd 43%, #f6f5f7 51%, #f6f5f7 54%, #dcdbdd 61%, #dcdbdd 65%, #ffffff 76%);
	text-shadow: 0 0 7px #ffffff, 0 0 7px #ffffff, 0 0 7px #ffffff, 0 0 7px #ffffff;
}

.rank .rank-innner-3 {
	/*
	background-color: #DAA520;
	color: #ffffff;
	*/
	font-family: "游明朝 Medium", "Yu Mincho Medium", "YuMincho Medium", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", serif;
	font-weight: bold;
	color: #a97e7e;
	text-align: center;
	font-size: 18px;
	letter-spacing: 1px;
	border: solid 1px #CCC;
	background-image: linear-gradient(150deg, #fcf0f0, #fcf0f0 31%, #ecd5d5 38%, #ecd5d5 43%, #fff5f5 51%, #fff5f5 54%, #ecd5d5 61%, #ecd5d5 65%, #ffffff 76%);
	text-shadow: 0 0 7px #ffffff, 0 0 7px #ffffff, 0 0 7px #ffffff, 0 0 7px #ffffff;
}


#schedule-box li .schedule-box-inner .schedule-box-inner-text {
	border-bottom: 1px solid #304467;
	height: 30px;
	line-height: 30px;
	font-weight: normal;
	text-align: center;
}

#schedule-box li .schedule-box-inner .schedule-box-inner-text span {
	padding: 0 10px;
	font-size: 12px;
}

#schedule-box li .schedule-box-inner .schedule-box-inner-text span.no-padding {
	padding: 0;
	font-size: 12px;
}


#footer-box {
	width: 100%;
	height: auto;
	border-top: 50px solid #000;
	min-height: 200px;
}

#footer-box #footer-inner {
	width: 1000px;
	margin: 0 auto;
	background-color: rgba(0, 0, 0, 0.6);
	padding: 10px;
	min-height: 200px;
}

#f-nav li {
	padding: 0 0;
	color: #fff;
	border-right: 1px solid rgba(255, 255, 255, 0.2);
	text-align: center;
	display: flex;
	flex: 1;
	align-self: auto;
	min-width: 0;
	height: 40px;
}

#f-nav li:last-child {
	border-right: none;
}

#f-nav li a {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 1;
	color: #fff;
	text-decoration: none;
	text-align: center;
	word-break: break-all;
	box-sizing: border-box;
	font-size: 12px;
	letter-spacing: 1.5px;
}

#f-nav li a span {
	font-size: 12px;
}


#f-nav {
	display: flex;
	padding: 10px 0;
	width: 100%;
}

#f-logo {
	width: 421px;
	height: 120px;
	padding: 20px;
	margin: 0 auto;
}

#f-copy {
	width: 100%;
	height: 50px;
	line-height: 50px;
	background-color: #000;
	text-align: center;
	color: #fff;
	letter-spacing: 2px;
	font-size: 12px;
}

.c-modal {
	position: fixed;
	width: 100%;
	height: 100vh;
	top: 0;
	background: rgba(0, 0, 0, .9);
	z-index: 100000;
	display: flex;
	justify-content: center;
	align-items: center;
	transition: all .5s;
}

.c-modal__text {
	text-align: center;
	margin-top: 10%;
}

.c-modal__btn {
	border-radius: 0 0 4px 4px;
	padding: 12px 40px;
}

.c-btn {
	display: block;
	width: 100%;
	height: 3rem;
	line-height: 3rem;
	box-sizing: border-box;
	background: rgba(52, 96, 173, .7);
	border: 0;
	color: #fff;
	text-decoration: none;
	text-align: center;
}

.c-btn2 {
	display: block;
	width: 100%;
	height: 3rem;
	line-height: 3rem;
	box-sizing: border-box;
	background: rgba(43, 66, 107, .7);
	border: 0;
	color: #fff;
	text-decoration: none;
	text-align: center;
}

.l-modal {
	left: 50%;
	margin: auto;
	position: fixed;
	top: 50%;
	transform: translate(-50%, -50%);
}

.c-modal-btn-all {
	width: 800px;
	margin: 0 auto;
}

.modal-top {
	width: 100%;
	height: 100%;
}

.modal-top-cell {
	height: 100%;
	height: 100%;
}

#breadcrumbs a {
	display: inline;
}

.all-text-box {
	padding: 10px;
	width: 100%;
	height: auto;
}

.all-text-box .all-text-box-inner {
	padding: 10px;
	width: 100%;
	height: auto;
	background-color: rgba(0, 0, 0, 1);
	border-radius: 5px;
	box-shadow: 0 0 1px 1px rgba(255, 255, 255, 0.1) inset;
}

.all-text-box .all-text-box-inner {
	padding: 20px;
	width: 100%;
	height: auto;
	background-color: rgba(0, 0, 0, 1);
	border-radius: 5px;
	box-shadow: 0 0 1px 1px rgba(255, 255, 255, 0.1) inset;
}

.all-text-box .all-text-box-inner h3 {
	width: 100%;
	color: #fff;
	text-align: center;
	padding: 10px 0;
	font-weight: normal;
	font-size: 12px;
}

.all-text-box .all-text-box-inner h3 span:first-child {
	display: block;
	font-size: 30px;
	width: 100%;
	margin: 4px auto 0 auto;
	border-bottom: 2px solid #304467;
	padding: 4px 0 10px 0;
	font-family: 'Noto Serif JP', serif;
}

.all-text-box .all-text-box-inner h3 span:last-child {
	display: block;
	margin: 4px auto;
	text-align: center;
	font-size: 12px;
}

.system_title {
	font-size: 24px;
	line-height: 70px;
	height: 70px;
	font-family: "游明朝 Medium", "Yu Mincho Medium", "YuMincho Medium", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", serif;
}

.system_title span {
	font-size: 60%;
}

.system-detail-text {
	padding: 20px;
	letter-spacing: 2px;
}

.system-detail-text span {
	background-color: rgba(33.203, 255, 0, 0.5);
}

.b_line {
	border-bottom: 1px solid #304467;
}

.l_line {
	border-left: 1px solid #304467;
}

.r_line {
	border-right: 1px solid #304467;
}

.t_line {
	border-top: 1px solid #304467;
}

.w100p {
	width: 100%;
}

.w50p {
	width: 50%;
}

.t-c {
	text-align: center;
}

.mab-20 {
	margin-bottom: 20px;
}

.mab-10 {
	margin-bottom: 10px;
}

#therapist-box {
	width: 100%;
	height: auto;
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(25%, 1fr));
}

#therapist-box li {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	height: auto;
	padding: 10px;
	margin-bottom: 20px;
}

#therapist-box li .therapist-box-inner {
	background-color: rgba(0, 0, 0, 1);
	border-radius: 5px;
	box-shadow: 0 0 1px 1px rgba(255, 255, 255, 0.1) inset;
	padding: 10px;
}

#therapist-box li .therapist-box-inner .therapist-box-inner-text {
	border-bottom: 1px solid #304467;
	height: 30px;
	line-height: 30px;
	font-weight: normal;
	text-align: center;
}

#therapist-box li .therapist-box-inner .therapist-box-inner-text span {
	padding: 0 5px;
	font-size: 10px;
}

#therapist-box li .therapist-box-inner .therapist-box-inner-text span.no-padding {
	padding: 0;
	font-size: 10px;
}

#schedule-head-box {
	width: 100%;
	height: auto;
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(14.28%, 1fr));
}

#schedule-head-box li {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	height: auto;
	padding: 10px;
}

.s-btn {
	display: block;
	width: 100%;
	height: 3rem;
	line-height: 3rem;
	box-sizing: border-box;
	background: rgba(52, 96, 173, .7);
	border: 0;
	color: #fff;
	text-decoration: none;
	text-align: center;
	border-radius: 10px;
	letter-spacing: 1px;
}

.s-btn2 {
	display: block;
	width: 100%;
	height: 3rem;
	line-height: 3rem;
	box-sizing: border-box;
	background: rgba(43, 66, 107, .7);
	border: 0;
	color: #fff;
	text-decoration: none;
	text-align: center;
	border-radius: 10px;
	letter-spacing: 1px;
}

.pa10 {
	padding: 10px;
}

.event-box {
	width: 100%;
}

.v-t {
	vertical-align: top;
}

.t-l {
	text-align: left !important;
}

.event-box img {
	width: 100%;
}

.profile-inner-text {
	border-bottom: 1px solid #304467;
	height: 30px;
	line-height: 30px;
	font-weight: normal;
	text-align: center;
	font-size: 26px;
	letter-spacing: 2px;
}

.profile-inner-text span {
	padding: 0 10px;
	font-size: 12px;
}

.profile-inner-text3 {
	height: 30px;
	line-height: 30px;
	font-weight: normal;
	text-align: left;
	font-size: 14px;
	margin-bottom: 20px;
	letter-spacing: 2px;
}

.profile-inner-text2 {
	border-bottom: 1px solid #304467;
	height: 30px;
	line-height: 30px;
	font-weight: normal;
	text-align: left;
	font-size: 14px;
	margin-bottom: 20px;
	letter-spacing: 2px;
}

.profile-inner-text3 span {
	padding: 0 10px;
	font-size: 11px;
	color: #fdd100;
}

.profile-inner-text2 span {
	padding: 0 10px;
	font-size: 11px;
	color: #fdd100;
}

.profile-inner-text span.no-padding {
	padding: 0;
	font-size: 11px;
	color: #304467;
}

.shop-comment-box {
	border: 1px solid #304467;
	padding: 10px;
	height: auto;
	width: 100%;
	font-size: 12px;
	letter-spacing: 2px;
}

.p-btn {
	display: block;
	width: 100%;
	height: 3rem;
	line-height: 3rem;
	box-sizing: border-box;
	background: rgba(52, 96, 173, .7);
	border: 0;
	color: #fff;
	text-decoration: none;
	text-align: center;
	letter-spacing: 1px;
}

.p-btn2 {
	display: block;
	width: 100%;
	height: 3rem;
	line-height: 3rem;
	box-sizing: border-box;
	background: rgba(43, 66, 107, .7);
	border: 0;
	color: #fff;
	text-decoration: none;
	text-align: center;
	letter-spacing: 1px;
}

.w33p {
	width: 33%;
}

.precautions {
	font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
	color: #000;
	font-weight: bold;
	border: solid 50px #000;
	background-color: #fdd100 !important;
}