/*
Theme Name: のんのんホームページ
Description: のんのんホームページ用ワードプレステーマです。
Version: 1.0
Author: Takaaki Kobayashi
Author URI: https://www.dc-axis.com/
Tags: orange, yellow, light-gray, white
*/

/*
	- GENERAL
	- LOADING ANNIMATION
	- BASIC LAYOUT
	- HEADINGS
	- CONTENT COLOR
	- HEADER
	- MENU
	- BREAD CRUMBS
	- CONTENT
	- IMPORTANT
	- NEWS
	- ABOUT
	- PICMENU
	- EQUIPMENT
	- GROUP
	- FOOTER
	- META
	- TABLE
	- BUTTON
	- PAGENAVI
	- GOOGLE MAPS
	- SEARCHFORM
	- WORDPRESS CSS
	- USEFUL

	- CONTENT
	- NONNON
	- PERSON
	- PRICE
	- GUIDE
	- FLOW
	- ITEM
	- ACCESS
	- CONTACT
	- MAILFORM

/*	##################################
	GENERAL
	################################## */

* {
	margin: 0;
	padding: 0;
}

html {
	margin: 0;
	padding: 0;
}

body {
	margin: 0;
	padding: 0;
	background: #ffffff;
	color: #000000;
	font: 100% "UD新ゴ R", UD Shin Go Regular, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-ser;
	display: grid;
	grid-template-rows: auto 1fr auto;
	grid-template-columns: 100%;
	min-height: 100vh;
}

a {
	color: #ef821d;
	outline: none;
	text-decoration: none;
}

a:hover {
	color: #ef821d;
	text-decoration: underline;
}

a:hover img {
	opacity: 0.7;
}

p {
	margin: 0;
	padding: 0;
	line-height: 2;
}

img {
	margin: 0;
	padding: 0;
	vertical-align: top;
	border: none;
}

strong,
b {
	font-family: "UD新ゴ M", UD Shin Go Medium, "ヒラギノ角ゴ Pro W6", "HiraKakuPro-W6", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-ser;
	font-weight: bold;
}

ul,
ol {
	margin: 40px 20px;
	line-height: 200%;
}

ul li,
ol li {
	margin-bottom: 20px;
	line-height: 160%;
}

/** PC、SP表示切替 */
@media screen and (max-width: 767px) {
	.sp-none {
		display: none !important;
	}
	.pc-none {
		display: block !important;
	}
}

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

/*	##################################
	LOADING ANNIMATION
	################################## */

.loading {
	position: fixed;
	top: 0;
	left: 0;
	width: 100vw;
	height: 100vh;
	z-index: 200;
	background-color: #ffffff;
	display: flex;
	align-items: center;
	justify-content: center;
	animation: fadeOut 1.5s 2.5s forwards;
}

.loading.is-hidden {
	opacity: 0;
	visibility: hidden;
	transition: opacity 0.5s, visibility 0.5s;
}

@keyframes fadeOut {
	0% {
		opacity: 1;
	}
	100% {
		opacity: 0;
		visibility: hidden;
	}
}

.loading__logo {
	opacity: 0;
	animation: logo_fade 4s 0.5s forwards;
	width: 200px;
}

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

/*	##################################
	BASIC LAYOUT
	################################## */

header {
	width: 100%;
	margin: 0;
	padding: 0;
	background: url(img/bg-header.svg) top center no-repeat;
	background-size: cover;
}
@media screen and (max-width: 767px) {
	header {
		background: none;
		background-size: auto;
	}
}

main {
	width: 100%;
	margin: 0;
	padding: 0;
}

section {
	width: 100%;
	min-width: 1200px;
	margin: 0;
	padding: 0;
}
@media screen and (max-width: 767px) {
	section {
		min-width: initial;
		min-width: auto;
		width: 100%;
	}
}

footer {
	width: 100%;
	min-width: 1200px;
	margin: 0;
	padding: 0;
	background: url(img/bg-footer.svg) bottom center no-repeat;
	background-size: cover;
}
@media screen and (max-width: 767px) {
	footer {
		min-width: initial;
		min-width: auto;
		width: 100%;
	}
}

/*	##################################
	HEADINGS
	################################## */

h1, h2, h3, h4, h5 {
	font-family: "じゅん 501", "Jun 501", "ヒラギノ角ゴ Pro W6", "HiraKakuPro-W6", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-ser;
	font-weight: bold;
}

h1 a, h2 a, h3 a, h4 a, h5 a {
	text-decoration: none;
}

h1#content-title {
	width: 200px;
	height: auto;
	margin: 0;
	padding: 0;
	text-align: left;
	line-height: 1;
}
@media screen and (max-width: 767px) {
	h1#content-title {
		width: 40%;
		height: 100%;
	}
}

h1#content-title a {
	text-decoration: none;
}

h1#content-title a:hover img {
	opacity: 1;
}

h2 {
	margin: 0 0 20px 0;
	padding: 0 0 20px 0;
	font-size: 200%;
}

h2 a {
	color: #000000;
	text-decoration: none;
}

h2 a:hover {
	color: #ef821d;
	text-decoration: none;
}

h2.section-title {
	position: relative;
	margin: 0;
	margin-bottom: 40px;
	padding-bottom: 35px;
	color: #000000;
}

h2.section-title:before {
	content: attr(data-title);
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	font-family: "Oswald", sans-serif;
	font-optical-sizing: auto;
	font-weight: 400;
	font-style: normal;
	font-size: 80%;
	color: #ef821d;
}
@media screen and (max-width: 767px) {
	h2.section-title {
		margin-bottom: 20px;
		font-size: 180%;
		line-height: 120%;
	}
}

h3 {
	margin: 20px 0;
	padding: 0;
	font-size: 180%;
	line-height: 140%;
}

h3 a {
	color: #000000;
	text-decoration: none;
}

h3 a:hover {
	color: #ef821d;
	text-decoration: none;
}

h4 {
	position: relative;
	margin: 20px 0 10px 0;
	padding: 0 0 0 25px;
	font-size: 150%;
	color: #000000;
}

h4::before {
	position: absolute;
	top: 50%;
	bottom: 50%;
	left: 0;
	transform: translateY(-50%);
	content: '';
	width: 12px;
	height: 12px;
	border: 4px solid #ef821d;
	border-radius: 100%;
}

h4.sidebar-title {
	position: static;
	margin: 0 0 20px 0;
	padding: 0 0 10px 0;
	border-bottom: 1px solid #cccccc;
}

h4.sidebar-title::before {
	position: static;
	border: none;
}

h4.sidebar-title i {
	margin-right: 10px;
	color: #ef821d;
}

h5 {
	margin: 20px 0 5px 0;
	padding: 0;
	font-size: 120%;
}

/*	##################################
	CONTENT COLOR
	################################## */

.col-01 {
	background: #ffffff;
}

.col-02 {
	background: #f8f4e6;
}

.col-03 {
	background: #ffdb3c;
}

.col-04 {
	background: #e8ecef;
}

.col-att {
	background: #ffe4e1;
}

/*	##################################
	HEADER
	################################## */

/** トップページ用 */
.header-nav,
.header-nav-sub {
	display: flex;
	min-width: 1200px;
	margin: 0 auto;
	padding: 0;
	justify-content: space-between;
	align-items: flex-start;
	z-index: 30;
}
@media screen and (max-width: 767px) {
	.header-nav,
	.header-nav-sub {
		position: fixed;
		top: 15px;
		left: 5%;
		min-width: initial;
		min-width: auto;
		width: 90%;
	}
}


/** サブページ用 */
.header-nav-title {
	flex: 0 0 250px;
	margin-top: 20px;
	padding-left: 50px;
}
@media screen and (max-width: 767px) {
	.header-nav-title {
		flex: inline;
		margin: 0;
		padding: 0;
	}
}

.header-nav-menu {
	flex: 1;
}
@media screen and (max-width: 767px) {
	.header-nav-menu {
		flex: inline;
	}
}

/*	##################################
	MENU
	################################## */

.overlay {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, 0.8);
	opacity: 0;
	visibility: hidden;
	z-index: 50;
	transition: opacity 0.3s ease, visibility 0.3s ease;
}

.open-menu .overlay {
	opacity: 1;
	visibility: visible;
}

/** ヘッダー用（PC） */
nav.hgmenu ul {
	display: flex;
	list-style: none;
	align-items: center;
	justify-content: flex-end;
	margin-right: 0;
	padding-right: 50px;
}

nav.hgmenu ul li {
	margin: 0;
	margin-left: 15px;
	font-size: 110%;
}

nav.hgmenu ul li a {
	text-decoration: none;
}

nav.hgmenu ul li a.std {
	color: #000000;
	padding-bottom: 5px;
	position: relative;
}

nav.hgmenu ul li a.std::before {
	background: #000000;
	content: '';
	width: 100%;
	height: 1px;
	position: absolute;
	left: 0;
	bottom: 0;
	transform-origin: right top;
	transform: scale(0, 1);
	transition: transform .3s;
}

nav.hgmenu ul li a.std:hover {
	text-decoration: none;
}

nav.hgmenu ul li a.std:hover::before {
	transform-origin: left top;
	transform: scale(1, 1);
}

nav.hgmenu ul li a.contact {
	padding: 10px 15px;
	background: #ef821d;
	color: #ffffff;
	border: 1px solid #ef821d;
	border-radius: 20px;
	transition: .4s cubic-bezier(0.45, 0, 0.55, 1);
}

nav.hgmenu ul li a.contact:hover {
	background: #ffffff;
	color: #ef821d;
	border: 1px solid #ef821d;
}

nav.hgmenu ul li a i {
	margin-right: 10px;
}

/** ヘッダー用（SP） */
@media screen and (max-width: 767px) {
	/* メニューのスタイル */
	.menu {
		position: fixed;
		top: 0;
		right: -100%;
		width: 80%;
		height: 100vh;
		background-color: #ef821d;
		color: #ffffff;
		transition: right 0.3s ease;
		padding: 20px !important;
		box-sizing: border-box;
		z-index: 90;
	}

	.menu.open {
		right: 0;
	}

	.hamburger {
		position: fixed;
		top: 15px;
		right: 15px;
		width: 30px;
		cursor: pointer;
		z-index: 70;
	}

	.hamburger span {
		display: block;
		height: 3px;
		width: 100%;
		background-color: #000000;
		margin: 5px 0;
		transition: 0.4s;
	}

	.hamburger.active span:nth-child(1) {
		transform: rotate(45deg) translate(5px, 5px);
		background-color: #ffffff;
	}

	.hamburger.active span:nth-child(2) {
		opacity: 0;
	}

	.hamburger.active span:nth-child(3) {
		transform: rotate(-45deg) translate(6px, -6px);
		background-color: #ffffff;
	}

	.menu ul {
		display: block !important;
		list-style-type: none;
		height: calc(100vh - 100px);
		margin: 0 !important;
		margin-top: 40px !important;
		padding: 0;
		overflow-y: auto;
		-webkit-overflow-scrolling: touch;
	}

	.menu ul li {
		margin: 0 !important;
		border-bottom: 1px solid #f19036;
		color: #ffffff !important;
	}

	.menu ul li a {
		padding: 20px 10px !important;
		background: none !important;
		color: #ffffff !important;
		text-decoration: none;
		display: block;
	}

	.menu ul li a:hover {
		background: #e4760f !important;
	}

	nav.hgmenu ul {
		padding-right: 0;
	}

	nav.hgmenu ul li a.std {
		position: static;
	}

	nav.hgmenu ul li a.std::before {
		content: none;
	}

	nav.hgmenu ul li a.std:hover::before {
		transform-origin: initial;
		transform: none;
	}

	nav.hgmenu ul li a.contact {
		border: none !important;
		border-radius: 0;
	}
}

/** フッター用 */
nav.fgmenu {
	margin-bottom: 20px;
	border-top: 1px solid #eeeeee;
	border-bottom: 1px solid #eeeeee;
}

nav.fgmenu ul {
	display: flex;
	list-style: none;
	justify-content: center;
	align-items: center;
	margin: 25px 0;
	margin-right: 0;
}

nav.fgmenu ul li {
	margin: 0;
	margin-left: 15px;
	font-size: 110%;
}

nav.fgmenu ul li a {
	text-decoration: none;
}

nav.fgmenu ul li a.std {
	color: #000000;
	padding-bottom: 5px;
	position: relative;
}

nav.fgmenu ul li a.std::before {
	background: #000000;
	content: '';
	width: 100%;
	height: 1px;
	position: absolute;
	left: 0;
	bottom: 0;
	transform-origin: right top;
	transform: scale(0, 1);
	transition: transform .3s;
}

nav.fgmenu ul li a.std:hover {
	text-decoration: none;
}

nav.fgmenu ul li a.std:hover::before {
	transform-origin: left top;
	transform: scale(1, 1);
}

nav.fgmenu ul li a.contact {
	padding: 10px 15px;
	background: #ef821d;
	color: #ffffff;
	border: 1px solid #ef821d;
	border-radius: 20px;
	transition: .4s cubic-bezier(0.45, 0, 0.55, 1);
}

nav.fgmenu ul li a.contact:hover {
	background: #ffffff;
	color: #ef821d;
	border: 1px solid #ef821d;
}

nav.fgmenu ul li a.contact i {
	margin-right: 10px;
}

/*	##################################
	BREAD CRUMBS
	################################## */

#breadcrumbs {
	min-width: 1000px;
	margin: 0 auto;
	padding: 40px 100px;
	font-size: 75%;
}
@media screen and (max-width: 767px) {
	#breadcrumbs {
		min-width: initial;
		min-width: auto;
		width: 90%;
		padding: 20px 0;
	}
}

#breadcrumbs a {
	text-decoration: none;
}

#breadcrumbs a:hover {
	text-decoration: underline;
	text-decoration-color: #ef821d;
}

#breadcrumbs a span {
	color: #ef821d;
}

/*	##################################
	CONTENT
	################################## */

/** トップページ用 */
.header-top-img {
	position: relative;
}

.header-top-img p.header-cp {
	position: absolute;
	top: 40%;
	left: -200px;
	font-family: "じゅん 501", "Jun 501", "ヒラギノ角ゴ Pro W6", "HiraKakuPro-W6", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-ser;
	font-weight: bold;
	font-size: 270%;
	line-height: 1.5;
}
@media screen and (max-width: 767px) {
	.header-top-img p.header-cp {
		top: auto;
		bottom: 10%;
		left: 5%;
		font-size: 200%;
		line-height: 1.4;
	}
}

.header-slide-img {
	min-height: 50vh;
	width: 100%;
	z-index: 0;
	overflow: hidden;
	border-top-left-radius: 20px;
	border-bottom-left-radius: 20px;
}
@media screen and (max-width: 767px) {
	.header-slide-img {
		border-radius: 0;
	}
}


/** サブページ用 */
.header-sub-img {
	position: relative;
}

.header-sub-img img {
	width: 100%;
	height: 400px;
	z-index: 0;
	border-radius: 40px 0 0 40px;
	object-fit: cover;
}
@media screen and (max-width: 767px) {
	.header-sub-img img {
		border-radius: 0;
	}
}

.header-sub-img p.header-sub-cp {
	position: absolute;
	bottom: 20%;
	left: -150px;
	font-family: "じゅん 501", "Jun 501", "ヒラギノ角ゴ Pro W6", "HiraKakuPro-W6", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-ser;
	font-weight: bold;
	font-size: 270%;
	line-height: 1.5;
}
@media screen and (max-width: 767px) {
	.header-sub-img p.header-sub-cp {
		bottom: 10%;
		left: 5%;
		font-size: 200%;
		line-height: 1.4;
	}
}

/*	##################################
	IMPORTANT
	################################## */

.important-box-wrapper {
	min-width: 1100px;
	margin: 80px auto 0 auto;
	padding: 80px 50px;
}
@media screen and (max-width: 767px) {
	.important-box-wrapper {
		min-width: initial;
		min-width: auto;
		width: 90%;
		margin: 40px auto 0 auto;
		padding: 40px 0;
	}
}

.important-box-txt {
	margin-bottom: 20px;
}

/*	##################################
	NEWS
	################################## */

.news-box-wrapper {
	min-width: 1100px;
	margin: 0 auto;
	padding: 80px 50px;
}
@media screen and (max-width: 767px) {
	.news-box-wrapper {
		min-width: initial;
		min-width: auto;
		width: 90%;
		padding: 40px 0;
	}
}

.news-box {
	display: flex;
	width: auto;
	margin: 0;
	padding: 0;
}
@media screen and (max-width: 767px) {
	.news-box {
		display: block;
	}
}

.news-bnr {
	flex: 0 0 250px;
}
@media screen and (max-width: 767px) {
	.news-bnr {
		flex: inline;
		margin-bottom: 40px;
	}
}

.news-bnr ul {
	list-style: none;
	margin: 0;
	padding: 0;
}
@media screen and (max-width: 767px) {
	.news-bnr ul {
		width: 100%;
		margin: 0 0 -4% 0;
		padding: 0;
		list-style: none;
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
}

.news-bnr ul li {
	margin-bottom: 20px;
}
@media screen and (max-width: 767px) {
	.news-bnr ul li {
		width: 48%;
		margin: 0 0 4% 0;
		padding: 0;
		box-sizing: border-box;
		display: flex;
		flex-direction: column;
	}
}

.news-bnr img {
	border: solid 1px #cccccc;
	border-radius: 10px;
}
@media screen and (max-width: 767px) {
	.news-bnr img {
		width: 100%;
		height: auto;
		margin: 0;
		padding: 0;
	}
}

.news-bnr a:hover img {
	opacity: 1;
	transition: .3s;
	transform: translateY(-6px);
}

.news-content-wrapper {
	flex: 1;
}
@media screen and (max-width: 767px) {
	.news-content-wrapper {
		flex: inline;
	}
}

.news,
.news-top
 {
	width: 100%;
	margin: 0;
	padding: 0;
}

.news dl,
.news-top dl {
	margin: 0;
	padding: 20px 0 0 0;
	border-top: solid 1px #dddddd;
}

.news dt,
.news-top dt {
	margin: 0;
	padding: 0;
}

.news dt .new,
.news-top dt .new {
	margin: 0 0 0 10px;
	padding: 4px 20px;
	background: #c9171e;
	font-size: 75%;
	color: #ffffff;
	border-radius: 10px;
}

.news dt .cat,
.news-top dt .cat {
	font-size: 75%;
}

.news dt .cat a,
.news-top dt .cat a {
	margin: 0 0 0 20px;
	padding: 4px 20px;
	background-color: #ef821d;
	border: 1px solid #ef821d;
	color: #ffffff;
	border-radius: 10px;
	text-decoration: none;
	color: #ffffff;
	transition: .4s cubic-bezier(0.45, 0, 0.55, 1);
}

.news dt .cat a:hover,
.news-top dt .cat a:hover {
	background-color: #ffffff;
	text-decoration: none;
	color: #ef821d;
}

.news dd,
.news-top dd {
	position: relative;
	margin: 10px 0 20px 0;
	padding: 0;
	line-height: 200%;
	border-bottom: solid 1px #dddddd;
}

.news dd a,
.news-top dd a {
	display: block;
	padding: 10px 40px 20px 0;
	color: #000000;
	text-decoration: none;
	position: relative;
}

.news dd a:hover,
.news-top dd a:hover {
	color: #ef821d;
	text-decoration: none;
}

.news dd:after,
.news-top dd:after {
	font-family: "Font Awesome 5 Free";
	content: "\f138";
	font-weight: 900;
	font-size: 1.5em;
	margin: auto;
	position: absolute;
	top: 0.5em;
	right: 0;
	color: #666666;
}

.news dd:hover::after,
.news-top dd:hover::after {
	color: #ef821d;
}

/*	##################################
	ABOUT
	################################## */

.about {
	min-width: 1000px;
	margin: 0 auto;
	padding: 80px 100px;
}
@media screen and (max-width: 767px) {
	.about {
		min-width: initial;
		min-width: auto;
		width: 90%;
		padding: 40px 0;
	}
}

.about-box {
	display: flex;
	width: auto;
	margin: 0;
	padding: 0;
}
@media screen and (max-width: 767px) {
	.about-box {
		display: block;
	}
}

.about-box-pic {
	flex: 0 0 320px;
	margin-right: 40px;
}
@media screen and (max-width: 767px) {
	.about-box-pic {
		flex: inline;
		margin: 0;
	}
}

.about-box-pic p.nurse {
	margin-top: 10px;
	margin-left: 10px;
	font-size: 110%;
}

.about-box-pic p.nurse span {
	margin-left: 5px;
	margin-right: 10px;
	font-family: "UD新ゴ M", UD Shin Go Medium, "ヒラギノ角ゴ Pro W6", "HiraKakuPro-W6", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-ser;
}

.about-box-pic img {
	width: 100%;
	height: auto;
	border-radius: 20px;
}

.about-box-content {
	flex: 1;
}
@media screen and (max-width: 767px) {
	.about-box-content {
		flex: inline;
	}
}

.about-box-content h3 {
	position: relative;
	margin: 0 0 10px 0;
	padding: 0 0 0 25px;
	font-size: 150%;
	color: #000000;
}

.about-box-content h3::before {
	position: absolute;
	top: 50%;
	bottom: 50%;
	left: 0;
	transform: translateY(-50%);
	content: '';
	width: 12px;
	height: 12px;
	border: 4px solid #ef821d;
	border-radius: 100%;
}

@media screen and (max-width: 767px) {
	.about-box-content h3 {
		margin-top: 40px;
	}
	.about-box-content h3::before {
		top: 25%;
		bottom: auto;
	}
}

.about-box-txt {
	margin-bottom: 20px;
}

/*	##################################
	PICMENU
	################################## */

.picmenu-top {
	min-width: 1000px;
	margin: 0 auto;
	padding: 80px 100px;
}
@media screen and (max-width: 767px) {
	.picmenu-top {
		min-width: initial;
		min-width: auto;
		width: 90%;
		padding: 40px 0;
	}
}

.picmenu-top ul {
	width: 100%;
	margin: 0 0 -4% 0;
	padding: 0;
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
@media screen and (max-width: 767px) {
	.picmenu-top ul {
		display: block;
	}
}

.picmenu-top ul:after {
	content: "";
	display: block;
	width: 32%;
	height: 0;
}

.picmenu-top ul li {
	width: 48%;
	margin: 0 0 4% 0;
	padding: 0;
	box-sizing: border-box;
	display: flex;
	flex-direction: column;
}
@media screen and (max-width: 767px) {
	.picmenu-top ul li {
		width: 100%;
	}
}

.picmenu-top ul li .thumb {
	position: relative;
	width: 100%;
	margin: 0;
	padding: 0;
}

.picmenu-top ul li .thumb img {
	width: 100%;
	height: auto;
	margin: 0;
	padding: 0;
	border-radius: 20px;
	z-index: 0;
}

.picmenu-top ul li h4.picmenu-title-box {
	position: absolute;
	top: 0;
	left: 0;
	margin: 0;
	padding: 15px 20px 15px 55px;
	background: #ffffff;
	font-size: 180%;
	border-radius: 0 0 20px 0;
	z-index: 1;
}
@media screen and (max-width: 767px) {
	.picmenu-top ul li h4.picmenu-title-box {
		padding: 10px 20px 10px 40px;
		font-size: 140%;
	}
}

.picmenu-top ul li h4.picmenu-title-box::before {
	position: static;
	border: none;
	font-family: "Font Awesome 5 Free";
	content: "\f0a9";
	font-weight: 900;
	font-size: 1em;
	margin: auto;
	position: absolute;
	top: 50%;
	left: 20px;
	color: #ef821d;
}
@media screen and (max-width: 767px) {
	.picmenu-top ul li h4.picmenu-title-box::before {
		left: 10px;
		bottom: 50%;
	}
}

/*	##################################
	EQUIPMENT
	################################## */

.equipment,
.equipment-sub {
	min-width: 1000px;
	margin: 0 auto;
	padding: 80px 100px;
}
@media screen and (max-width: 767px) {
	.equipment,
	.equipment-sub {
		min-width: initial;
		min-width: auto;
		width: 90%;
		padding: 40px 0;
	}
}

.equipment ul,
.equipment-sub ul {
	width: 100%;
	margin: 0;
	padding: 0;
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.equipment ul:after,
.equipment-sub ul:after {
	content: "";
	display: block;
	width: 32%;
	height: 0;
}
@media screen and (max-width: 767px) {
	.equipment ul:after {
		width: 48%;
	}
}
@media screen and (max-width: 767px) {
	.equipment ul:after {
		width: 100%;
	}
}

.equipment ul li,
.equipment-sub ul li {
	width: 32%;
	margin: 0;
	margin-bottom: 2%;
	padding: 0;
	box-sizing: border-box;
	display: flex;
	flex-direction: column;
}
@media screen and (max-width: 767px) {
	.equipment ul li {
		margin-bottom: 4%;
		width: 48%;
	}
}
@media screen and (max-width: 767px) {
	.equipment-sub ul li {
		margin-bottom: 10%;
		width: 100%;
	}
	.equipment-sub ul li:last-child {
		margin-bottom: 0;
		width: 100%;
	}
}

.equipment ul li.noworks,
.equipment-sub ul li.noworks {
	margin: 0;
	padding: 0;
}

.equipment ul li.noworks p,
.equipment-sub ul li.noworks p {
	margin: 0;
	padding: 0;
	font-size: 90%;
	line-height: 160%;
}

.equipment ul li .thumb,
.equipment-sub ul li .thumb {
	width: 100%;
	margin: 0;
	padding: 0;
}

.equipment ul li .thumb img,
.equipment-sub ul li .thumb img {
	width: 100%;
	height: auto;
	margin: 0;
	padding: 0;
	border-radius: 20px;
}
@media screen and (max-width: 767px) {
	.equipment ul li .thumb img {
		border-radius: 10px;
	}
}

.equipment ul li .txt,
.equipment-sub ul li .txt {
	margin: 0;
	margin-top: 10px;
	padding: 0;
	display: flex;
	flex-direction: column;
	flex-grow: 1;
}

.equipment ul li .txt p.eq-title,
.equipment-sub ul li .txt p.eq-title {
	margin: 0;
	margin-bottom: 10px;
	padding: 0;
	font-family: "じゅん 501", "Jun 501", "ヒラギノ角ゴ Pro W6", "HiraKakuPro-W6", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-ser;
	font-weight: bold;
	font-size: 130%;
	line-height: 140%;
}
@media screen and (max-width: 767px) {
	.equipment ul li .txt p.eq-title,
	.equipment-sub ul li .txt p.eq-title{
		font-size: 120%;
	}
}

.equipment ul li .txt p,
.equipment-sub ul li .txt p {
	margin: 0;
	padding: 0;
	font-size: 90%;
	line-height: 160%;
}
@media screen and (max-width: 767px) {
	.equipment ul li .txt p,
	.equipment-sub ul li .txt p {
		font-size: 85%;
	}
}

/*	##################################
	GROUP
	################################## */

.group {
	min-width: 1000px;
	margin: 0 auto;
	padding: 40px 100px;
}
@media screen and (max-width: 767px) {
	.group {
		min-width: initial;
		min-width: auto;
		width: 90%;
		padding: 40px 0;
	}
}

.group ul {
	width: 100%;
	margin: 0;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
@media screen and (max-width: 767px) {
	.group ul {
		margin-bottom: -10%;
	}
}

.group ul:after {
	content: "";
	display: block;
	width: 32%;
	height: 0;
}

.group ul li {
	width: 32%;
	margin: 0;
	padding: 0;
	list-style: none;
	box-sizing: border-box;
	display: flex;
	flex-direction: column;
}
@media screen and (max-width: 767px) {
	.group ul li {
		width: 100%;
		margin-bottom: 10%;
	}
}

.group ul li .thumb {
	width: 100%;
	margin: 0;
	padding: 0;
}

.group ul li .thumb img {
	width: 100%;
	height: auto;
	margin: 0;
	padding: 0;
	border-radius: 20px;
}

.group ul li .txt {
	margin: 0;
	padding: 10px;
	padding-bottom: 0;
	display: flex;
	flex-direction: column;
	flex-grow: 1;
}

.group ul li .txt p.gp-title {
	margin: 0;
	margin-bottom: 5px;
	padding: 0;
	font-family: "じゅん 501", "Jun 501", "ヒラギノ角ゴ Pro W6", "HiraKakuPro-W6", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-ser;
	font-weight: bold;
	font-size: 130%;
	line-height: 140%;
}

.group ul li .txt p {
	margin-bottom: 0;
	line-height: 150%;
}


/*	##################################
	FOOTER
	################################## */

.footer-wrapper {
	margin: 0;
	padding: 40px 0;
}
@media screen and (max-width: 767px) {
	.footer-wrapper {
		margin: 0 5%;
		padding: 20px 0;
	}
}

.footer-content {
	display: flex;
	min-width: 1100px;
	margin: 0 auto 20px auto;
	padding: 0 50px;
	justify-content: space-between;
	align-items: center;
}
@media screen and (max-width: 767px) {
	.footer-content {
		display: block;
		min-width: initial;
		min-width: auto;
		width: 100%;
		padding: 0;
	}
}

p.footer-logo {
	width: 300px;
	height: auto;
	margin: 0;
	padding: 0;
	text-align: left;
	line-height: 1;
}
@media screen and (max-width: 767px) {
	p.footer-logo {
		width: 80%;
		margin: 0 auto;
	}
}

.footer-info {
	display: flex;
	align-items: center;
}
@media screen and (max-width: 767px) {
	.footer-info {
		margin-top: 20px;
		display: block;
	}
}

.footer-info p.address {
	margin-right: 50px;
	font-size: 120%;
}
@media screen and (max-width: 767px) {
	.footer-info p.address {
		margin-right: 0;
		font-size: 100%;
		text-align: center;
	}
}

.footer-info p.tel {
	font-family: "じゅん 501", "Jun 501", "ヒラギノ角ゴ Pro W6", "HiraKakuPro-W6", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-ser;
	font-size: 200%;
	color: #ef821d;
	letter-spacing: 0.1rem;
}
@media screen and (max-width: 767px) {
	.footer-info p.tel {
		text-align: center;
		line-height: 130%;
	}
}

.footer-info p.tel i {
	margin-right: 10px;
}

.footer-time {
	min-width: 1100px;
	margin: 0 auto 40px auto;
	padding: 0 50px;
	align-items: center;
	justify-content: center;
	text-align: center;
}
@media screen and (max-width: 767px) {
	.footer-time {
		min-width: initial;
		min-width: auto;
		width: 100%;
		padding: 0;
		font-size: 85%;
	}
}

.footer-time p span {
	margin-right: 10px;
	padding: 5px 10px;
	border: 1px solid #000000;
	border-radius: 20px;
}

.footer-nav {
	min-width: 1100px;
	margin: 0 auto;
	padding: 0 50px;
}
@media screen and (max-width: 767px) {
	.footer-nav {
		min-width: initial;
		min-width: auto;
		width: 100%;
		padding: 0;
	}
}

.footer-nav .fmenu {
	margin-bottom: 40px;
	padding-bottom: 20px;
}

.footer-nav .fmenu ul {
	display: flex;
	margin: 0;
	padding: 0;
	list-style: none;
	align-items: center;
	justify-content: center;
	text-align: center;
}
@media screen and (max-width: 767px) {
	.footer-nav .fmenu ul {
		display: block;
	}
}

.footer-nav .fmenu ul li {
	margin: 0;
	padding: 0 20px;
	font-size: 90%;
}
@media screen and (max-width: 767px) {
	.footer-nav .fmenu ul li {
		padding: 0;
	}
}

.footer-nav .fmenu ul li:first-child {
	padding-left: 0;
}

.footer-nav .fmenu ul li+ li {
	border-left: 1px solid #cccccc;
}
@media screen and (max-width: 767px) {
	.footer-nav .fmenu ul li+ li {
		border: none;
	}
}

.footer-nav .fmenu ul li a {
	color: #000000;
}

.footer-nav .legal {
	min-width: 1100px;
	margin: 0 auto;
	padding: 0;
	font-size: 80%;
	display: flex;
	justify-content: space-between;
}
@media screen and (max-width: 767px) {
	.footer-nav .legal {
		min-width: initial;
		min-width: auto;
		width: 100%;
		font-size: 75%;
	}
}

.footer-nav .legal p {
	line-height: 150%;
}

.footer-nav .legal .footer-cp {
	width: 48%;
	margin: 0;
	padding: 0;
	color: #000000;
}
@media screen and (max-width: 767px) {
	.footer-nav .legal .footer-cp {
		width: 68%;
	}
}

.footer-nav .legal .footer-cp a {
	color: #000000;
}

.footer-nav .legal .footer-credit {
	width: 48%;
	margin: 0;
	padding: 0;
	font-family: "Oswald", sans-serif;
	font-optical-sizing: auto;
	font-weight: 300;
	font-style: normal;
	text-align: right;
	color: #fcf0ba;
}
@media screen and (max-width: 767px) {
	.footer-nav .legal .footer-credit {
		width: 28%;
	}
}

.footer-nav .legal .footer-credit a {
	text-decoration: none;
	color: #fcf0ba;
}

/*	##################################
	META
	################################## */

.meta {
	margin-bottom: 10px;
}

.meta-date,
.meta-categories,
.meta-comments,
.meta-member {
	margin-right: 20px;
	padding: 0;
}

.meta-date a,
.meta-categories a,
.meta-comments a,
.meta-member a {
	color: #000000;
	text-decoration: none;
}

.meta-date a:hover,
.meta-categories a:hover,
.meta-comments a:hover,
.meta-member a:hover {
	color: #ef821d;
	text-decoration: none;
}

.meta-date::before {
	margin: 0 5px 0 0;
	content: '\f017';
	font-family: 'Font Awesome 5 Free';
}

.meta-categories::before {
	margin: 0 5px 0 0;
	content: '\f15c';
	font-family: 'Font Awesome 5 Free';
}

.meta-comments::before {
	margin: 0 5px 0 0;
	content: '\f075';
	font-family: 'Font Awesome 5 Free';
}

.meta-member::before {
	margin: 0 5px 0 0;
	content: '\f007';
	font-family: 'Font Awesome 5 Free';
}

/*	##################################
	TABLE
	################################## */

table {
	width: 100%;
	margin: 0;
	padding: 0;
	border-collapse: collapse;
	border-top: solid 1px #eeeeee;
	table-layout: fixed;
}

table th {
	font-family: "UD新ゴ M", UD Shin Go Medium, "ヒラギノ角ゴ Pro W6", "HiraKakuPro-W6", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-ser;
	font-weight: bold;
	color: #000000;
}

table td {
	color: #000000;
}

table th,
table td {
	margin: 0;
	padding: 20px;
	text-align: center;
	border-bottom: solid 1px #eeeeee;
}

/*	##################################
	BUTTON
	################################## */

/** 予約ボタン */
.rsv-button {
	position: fixed;
	bottom: 30px;
	right: 30px;
	width: 140px;
	height: 140px;
	border: 1px solid #e01926;
	border-radius: 50%;
	display: flex;
	justify-content: center;
	align-items: center;
	background-color: #ffffff;
	text-decoration: none;
	box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
	z-index: 100;
}
@media screen and (max-width: 767px) {
	.rsv-button {
		bottom: 5%;
		right: 5%;
		width: 100px;
		height: 100px;
	}
}

.rsv-button:hover {
	transition: .3s;
	transform: translateY(-6px);
}

.rsv-button img {
	width: 100%;
	height: 100%;
}

.rsv-button img:hover {
	opacity: 1;
}

/** トップページ遷移、詳細ページ遷移 */
p.tohome a {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 200px;
	margin-left: auto;
	padding: .9em 2em;
	border: 1px solid #ef821d;
	border-radius: 25px;
	background-color: #ef821d;
	font-size: 1em;
	color: #ffffff;
	text-decoration: none;
}

p.more a {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 150px;
	margin-left: auto;
	padding: .9em 2em;
	border: 1px solid #ef821d;
	border-radius: 25px;
	background-color: #ef821d;
	font-size: 1em;
	color: #ffffff;
	text-decoration: none;
}

p.more a:hover,
p.tohome a:hover {
	background-color: #ffffff;
	color: #ef821d;
}

p.more a::after,
p.tohome a::after {
	content: '';
	transform: rotate(45deg);
	width: 5px;
	height: 5px;
	margin-left: 10px;
	border-top: 2px solid #ffffff;
	border-right: 2px solid #ffffff;
}

p.more a:hover::after,
p.tohome a:hover::after {
	border-color: #ef821d;
}


/** 管理画面編集ページ遷移 */
.edit {
	margin-top: 20px;
}

.edit a {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 150px;
	margin-left: auto;
	padding: .9em 2em;
	border: 1px solid #000000;
	border-radius: 8px;
	background-color: #000000;
	font-size: 1em;
	color: #ffffff;
	text-decoration: none;
}

.edit a:hover {
	background-color: #eeeeee;
	color: #000000;
}

.edit a::after {
	content: '';
	transform: rotate(45deg);
	width: 5px;
	height: 5px;
	margin-left: 10px;
	border-top: 2px solid #ffffff;
	border-right: 2px solid #ffffff;
}

.edit a:hover::after {
	border-color: #000000;
}

/*	##################################
	PAGENAVI
	################################## */

.navigation {
	margin: 40px 0;
	padding: 0;
	text-align: center;
}

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

a.page-numbers {
	padding: 10px 12px;
	text-decoration: none;
	width: auto;
	color: #ffffff; /* 通常の文字色 */
	background: #666666; /* 通常の背景色 */
	border-radius: 6px;
}

a.page-numbers:hover {
	color: #333333; /* マウスホバー時の文字色 */
	background: #dddddd; /* マウスホバー時の背景色 */
}

.page-numbers.current{
	padding: 10px 12px;
	color: #ffffff; /* 現在のページの文字色 */
	background: #040668; /* 現在のページの背景色 */
	border-radius: 6px;
}

a.page-numbers.prev,
a.page-numbers.next{
	font-family: 'Oswald', sans-serif;
	background: transparent;
	box-shadow: none;
	border: none;
	color: #000000;
}

/*	##################################
	GOOGLE MAPS
	################################## */

.gmap-wrapper {
	width: 100%;
	min-width: 1200px;
	margin: 0;
	padding: 0;
}
@media screen and (max-width: 767px) {
	.gmap-wrapper {
		min-width: initial;
		min-width: auto;
		width: 100%;
	}
}

.gmap {
	margin: 0;
	padding: 0;
}

/*	##################################
	SEARCH FORM
	################################## */

/*	##################################
	WORDPRESS CSS
	################################## */

.aligncenter,
div.aligncenter {
	display: block;
	margin: 0 auto;
	padding: 0;
}

.aligncenter {
	margin-bottom: 20px!important;
	padding: 0;
}

.alignleft {
	float: left;
	margin: 0 20px 20px 0;
	padding: 0;
}

.alignright {
	float: right;
	margin: 0 0 20px 20px;
	padding: 0;
}

.wp-caption {
	margin-bottom: 20px;
	padding-top: 4px;
	border: 1px solid #dddddd;
	text-align: center;
	background: #eeeeee;
}

.wp-caption img {
	float: none;
	margin: 0;
	padding: 0;
	border: none;
}

.wp-caption p.wp-caption-text {
	padding: 0;
	margin: 0;
}


/** WIDGETS CSS */
#calendar_wrap table {
	width: 100%;
	margin: 0;
	padding: 0;
}

#calendar_wrap td {
	text-align: center;
	margin: 0;
	padding: 0;
}

#wp-calendar caption {
	margin: 0 0 10px 0;
	padding: 0;
	background: #dddddd;
}

/*	##################################
	USEFUL
	################################## */

.fade-in {
	transition: 3s;
	opacity: 0;
	transform: translate(0, 60px); 
}

.mv {
	opacity: 1.0;
	transform: translate(0, 0); 
}

.clear {
	clear: both;
}

.clearfix:after {
	content: " ";
	display: block;
	clear: both;
	visibility: hidden;
	line-height: 0;
	height: 0;
}

.clearfix {
	display: inline-block;
}

html[xmlns] .clearfix {
	display: block;
}

* html .clearfix {
	height: 1%;
}


/** CSS BASIC ELEMENTS */
iframe {
	margin: 0;
	padding: 0;
	vertical-align: bottom;
}

hr {
	clear: both;
	height: 1px;
	margin: 20px 0;
	padding: 0;
	background: #dddddd;
	border: none;
}

blockquote {
	margin: 0 0 0 10px;
	padding: 0 0 0 10px;
	border-left: 5px solid #eeeeee;
}

fieldset {
	margin: 0 0 20px 0;
	padding: 0 20px 20px 20px;
	background: #eeeeee;
	border: none;
}

legend {
	margin: 0;
	padding: 0;
	font-size: 14px;
	font-weight: bold;
}

input,
textarea {
	margin: 0;
	padding: 10px;
	background: #f5f5f5;
	border: 1px solid #cccccc;
	color: #666666;
}

textarea {
	margin: 0;
	padding: 10px;
	width: 100%;
	height: 100px;
}

select {
	width: auto;
	margin: 0;
	padding: 10px;
	background: #f5f5f5;
	border: 1px solid #cccccc;
	color: #333333;
}

input.radio,
input.checkbox {
	width: auto;
	height: auto;
	margin: 0;
	padding: 0;
	background: #ffffff;
}

input.password {
	width: auto;
	margin: 0;
	padding: 0;
}

input.button {
	margin: 0;
	padding: 10px 20px;
	background: #ef821d;
	border: 1px solid #ef821d;
	color: #ffffff;
	cursor: pointer;
}
