@charset "utf-8";
/* 
Theme Name: genova_tpl
File: style.css
Author: Genova Design
Author URL: https://genova.co.jp/
Description: Genova 2021 Wordpress template
Version: 1.0
*/

/* =====================================
■ RESET
===================================== */
html{color:#000;background:#FFF}body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,textarea,p,blockquote,th,td{margin:0;padding:0}table{border-collapse:collapse;border-spacing:0}fieldset,img{border:0}address,caption,cite,code,dfn,em,strong,th,var{font-style:normal;font-weight:normal}ol,ul{list-style:none}caption,th{text-align:left}q:before,q:after{content:''}abbr,acronym{border:0;font-variant:normal}sup{vertical-align:text-top}sub{vertical-align:text-bottom}input,textarea,select{font-family:inherit;font-size:inherit;font-weight:inherit;*font-size:100%}legend{color:#000}#yui3-css-stamp.cssreset{display:none}
html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,abbr,address,cite,code,del,dfn,em,img,ins,kbd,q,samp,small,strong,sub,sup,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,figcaption,figure,footer,header,hgroup,menu,nav,section,summary,time,mark,audio,video {margin: 0;padding: 0;border: 0;outline: 0;vertical-align: baseline;background: transparent;-webkit-box-sizing: border-box;box-sizing: border-box;font-size: 1em;font-weight: 300;}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section {display: block;}input,select {vertical-align: middle;}

/* =====================================
■ BASE
===================================== */
/* -------------------------------------
* general
------------------------------------- */
html {
	font-size: 62.5%;
}
body {
	font-family: source-han-sans-japanese, sans-serif;
	font-size: 1.5rem;
	font-style: normal;
	font-weight: 300;
	letter-spacing: 0.08em;
	line-height: 1;	
	color: #282828;
	padding: 0;
	margin: 0;
	position: relative;
	z-index: 2;
	-ms-text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;
	-moz-text-size-adjust: none;
	text-size-adjust: none;
}
a:focus, *:focus {
	outline: none;
}
a {
	font-size: 100%;
	color: #000;
	background: transparent;
	vertical-align: baseline;
	text-decoration: none;
	transition: all 0.5s;
	margin: 0;
	padding: 0;
}
a:hover {
	opacity: 0.7;
	transition: all 0.5s;
}
a[href^="tel:"] {
	pointer-events: none;
	cursor: text;
}
img {
	width: 100%;
	max-width: 100%;
	vertical-align: top;
	margin: 0;
	padding: 0;
	-webkit-backface-visibility: hidden;
}
a img {
	opacity: 1;
	transition: opacity .5s;
}
table {
	width: 100%;
	table-layout: fixed;
	border-collapse: collapse;
	border-spacing: 0;
}
p, dd {
	line-height: 2;
	color: #323232;
}
/* p:not(:last-child) {
margin-bottom: 1em;
} */
:root {
	--swiper-theme-color: #e24b07;
}
hr {
	display: block;
	height: 1px;
	border: 0;
	border-top: 1px solid #333;
	margin: 1em 0;
	padding: 0;
}

/*　Elementor編集画面　*/
.hikoukai {
	display: none;
}
.elementor-editor-active #content .hikoukai {
	display: block !important;
	border: 5px solid #777;
	background: rgba(85, 85, 85, 0.5);
	padding: 20px 0;
}
.elementor-editor-active #content > #news,
.elementor-editor-active #content > .news,
.elementor-editor-active #content > .custom_calendar {
	display: none;
}

@media screen and (max-width: 767px) {
	body {
		min-width: 320px;
	}
	a:hover,
	a:hover img {
		opacity: 1 !important;
	}
	a[href^="tel:"] {
		pointer-events: auto;
		cursor: pointer;
	}
	.auto_height {
		height: auto !important;
	}
	p {
		line-height: 1.73333;
	}
}

/* -------------------------------------
* Icon fonts
------------------------------------- */
@font-face {
	font-family: 'CustomIcons';
	src:  url('./libs/CustomIcons/CustomIcons.eot');
	src:  url('../libs/CustomIcons/CustomIcons.eot#iefix') format('embedded-opentype'),
		url('./libs/CustomIcons/CustomIcons.ttf') format('truetype'),
		url('./libs/CustomIcons/CustomIcons.woff') format('woff'),
		url('./libs/CustomIcons/CustomIcons.svg#icomoon') format('svg');
	font-weight: normal;
	font-style: normal;
}

@font-face {
	font-family: 'Font Awesome';
	src:  url('./libs/Font Awesome/Font Awesome.eot');
	src:  url('../libs/Font Awesome/Font Awesome.eot#iefix') format('embedded-opentype'),
		url('./libs/Font Awesome/Font Awesome.ttf') format('truetype'),
		url('./libs/Font Awesome/Font Awesome.woff') format('woff'),
		url('./libs/Font Awesome/Font Awesome.svg#icomoon') format('svg');
	font-weight: normal;
	font-style: normal;
}

@font-face {
	font-family: 'icomoon';
	src:  url('./libs/icomoon/icomoon.eot');
	src:  url('../libs/icomoon/icomoon.eot#iefix') format('embedded-opentype'),
		url('./libs/icomoon/icomoon.ttf') format('truetype'),
		url('./libs/icomoon/icomoon.woff') format('woff'),
		url('./libs/icomoon/icomoon.svg#icomoon') format('svg');
	font-weight: normal;
	font-style: normal;
}
[class*='icon-']:not([class*='eicon-']):not([class*='elementor-icon-'])::before {
	display: inline-block;
	font-family: 'icomoon';
	speak: none;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;
	vertical-align: baseline;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
.icon-home::before {content: "\e90b";}
.icon-blog::before {content: "\e900";}
.icon-category::before {content: "\e901";}
.icon-check::before {content: "\e902";}
.icon-checked::before {content: "\e903";}
.icon-down::before {content: "\e904";}
.icon-facebook::before {content: "\e905";}
.icon-google::before {content: "\e906";}
.icon-line::before {content: "\e907";}
.icon-twitter::before {content: "\e908";}
.icon-arrow02::before {content: "\e909";}
.icon-arrow01::before {content: "\e910";}
.icon-search::before {content: "\e911";}
.icon-tag::before {content: "\e912";}
.icon-checkbox-unchecked::before {content: "\ea53";}
.icon-checkbox-checked::before {content: "\ea52";}
.radio-unchecked::before {content: "\ea56";}
.radio-checked::before {content: "\ea54";}
.radio-checked2::before {content: "\ea55";}

/* -------------------------------------
* shortcuts
------------------------------------- */
/* ■スペーサー
------------------------------------- */
/* margin */
.mb0 { margin-bottom: 0px !important; }
.mb5 { margin-bottom: 5px !important; }
.mb10 { margin-bottom: 10px !important; }
.mb15 { margin-bottom: 15px !important; }
.mb20 { margin-bottom: 20px !important; }
.mb25 { margin-bottom: 25px !important; }
.mb30 { margin-bottom: 30px !important; }
.mb35 { margin-bottom: 35px !important; }
.mb40 { margin-bottom: 40px !important; }
.mb45 { margin-bottom: 45px !important; }
.mb50 { margin-bottom: 50px !important; }
.mb55 { margin-bottom: 55px !important; }
.mb60 { margin-bottom: 60px !important; }
.mb65 { margin-bottom: 65px !important; }
.mb70 { margin-bottom: 70px !important; }
.mb75 { margin-bottom: 75px !important; }
.mb80 { margin-bottom: 80px !important; }
.mb85 { margin-bottom: 85px !important; }
.mb90 { margin-bottom: 90px !important; }
.mb95 { margin-bottom: 95px !important; }
.mb100 { margin-bottom: 100px !important; }

.mt0 { margin-top: 0px !important; }
.mt5 { margin-top: 5px !important; }
.mt10 { margin-top: 10px !important; }
.mt15 { margin-top: 15px !important; }

/* padding */
.pt0 { padding-top: 0px !important; }
.pt5 { padding-top: 5px !important; }
.pt10 { padding-top: 10px !important; }
.pt15 { padding-top: 15px !important; }

.pb0 { padding-bottom: 0px !important; }
.pb5 { padding-bottom: 5px !important; }
.pb10 { padding-bottom: 10px !important; }
.pb15 { padding-bottom: 15px !important; }

.mb1 { margin-bottom: 1em !important; }
.mb2 { margin-bottom: 2em !important; }
.mb3 { margin-bottom: 3em !important; }
.mb4 { margin-bottom: 4em !important; }

@media screen and (max-width: 767px) {
	.mb3 { margin-bottom: 2em !important; }
	.mb4 { margin-bottom: 3em !important; }
}

.marginT { margin-top: 40px; }
.marginTo {	margin-top: 88px; }
.shikaD { margin-bottom: 88px !important; }

/* ■汎用
------------------------------------- */
/* float */
.fr {
	float: right!important;
}
.fl {
	float: left!important;
}

/* clear */
.clearfix {
	*zoom: 1;
}
.clearfix:after {
	content: "";
	display: table;
	clear: both;
}
.cl {
	clear: both !important;
}

/* text indent */
.textHide {
	overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
}
.ovHide {
	overflow: hidden;
}

/* text-align */
.tac {
	text-align: center !important;
}
.tar {
	text-align: right !important;
}
.tal {
	text-align: left !important;
}

/* font-weight */
.fb {
	font-weight: bold !important;
}
.half {
	display: inline-block;
}

/* Pc/sp change */

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

@media screen and (min-width: calc(1025px)) {
	._tb {
		display: none !important;
	}
	.tableWt{
		width: 79% !important;
	}
}

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

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

/*--------------------------------------
* container
--------------------------------------*/
.container {
	width: min(100%, 1100px);
	display: -ms-grid;
	display: grid;
	-ms-grid-columns: 300px 1fr;
	grid-template-columns: 300px 1fr;
	grid-gap: 70px;
	margin: 0 auto;
}

@media screen and (max-width: 767px) {
	.container {
		width: 100%;
		display: block;
		padding: 0 20px;
	}
}

/* =====================================
■ HEADER
===================================== */
.header {
	padding-top: 31px;
	margin-bottom: 12px;
	text-align: center;
}
.header__info {
	display: flex;
	justify-content: space-between;
	align-items: center;
	max-width: 1220px;
	margin: 0 auto 50px;
	padding: 0 20px;
}
.header__home {
	display: inline-block;
}
.header__logo img {
	height: 88px;
	width: auto;
}
.header__contact {
	display: flex;
	align-items: center;
}
.header .tel__item {
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	font-family: source-han-serif-japanese, serif;
	font-weight: 500;
	font-size: 2.5rem;
	letter-spacing: 0.025em;
}
.header .tel__item--icon {
	width: 18px;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	flex: none;
	margin-top: 2px;
	margin-right: 7px;
}
.header .form__btn {
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	font-family: source-han-serif-japanese, serif;
	font-weight: 400;
	font-size: 1.4rem;
	letter-spacing: 0.05em;
	width: 165px;
	height: 43px;
	background: #141414;
	color: #fff;
	white-space: nowrap;
	padding-bottom: 4px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
.header .form__btn--clr1 {
	margin-left: 20px;
	background-color: #e76100;
}
.header .form__btn--clr2 {
	margin-left: 6px;
	background-color: #ecb022;
}
.header .form__btn--clr3 {
	margin-left: 6px;
	background-color: #02c755;;
}

@media screen and (max-width: 1280px) and (min-width: 1025px) {
	.header__logo img {
		height: 75px;
	}
	.header .tel__item {
		font-size: 2rem;
	}
	.header .form__btn {
		width: 150px;
	}
}

@media screen and (max-width: 1024px) {
	.header {
		padding-top: 19px;
		margin-bottom: 0;
	}
	.header__info {
		display: block;
		margin: 0 auto 25px;
	}
	.header__logo img {
		height: 70px;
	}
	.header__contact {
		display: none;
	}
}

@media screen and (max-width: 767px) {
	.header .tel__item {
		font-size: 2.1rem;
	}
	.header .tel__item--icon {
		width: 15px;
		margin-top: 2px;
		margin-right: 7px;
	}
}


/* -------------------------------------
* header__navigation
------------------------------------- */
.header-menu {
	display: grid;
	grid-template-columns: repeat(7, 170px);
	gap: 36px;
	justify-content: center;
	font-family: source-han-serif-japanese, serif;
	font-weight: 400;
	font-size: 1.6rem;
	letter-spacing: 0.13em;
	line-height: 2.875;
	text-align: center;
}
.header-menu__item a {
	border-bottom: 1px solid rgba(128, 128, 128, 0.25);
	display: block;
}
.header-menu__item a:hover {
	border-color: #e24b07;
	opacity: 1;
	color: #e24b07;
}

@media screen and (max-width: 1410px) and (min-width: 1281px) {
	.header-menu {
		grid-template-columns: repeat(7, 165px);
		gap: 20px;
	}
}

@media screen and (max-width: 1280px) {
	.header-menu {
		font-size: 1.3rem;
		letter-spacing: 0.08em;
		grid-template-columns: repeat(7, 130px);
		gap: 15px;
	}
}

@media screen and (max-width: 1024px) {
	.header-menu {
		display: none;
	}
}


/* -------------------------------------
* drawer
------------------------------------- */
.line-button {
	cursor: pointer;
	background-color: #3EB157;
	position: fixed;
	z-index: 104;
	top: 57px;
	display: flex;
	align-items: center;
	width: 90px;
	height: 57px;
	padding: 0;
	padding-right: 28px;
	padding-left: 28px;
	border: 0;
	outline: 0;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
.fadeIn{
	animation-name:fadeInAnime;
	animation-duration:1s;
	animation-fill-mode:forwards;
	opacity:0;
}
@keyframes fadeInAnime{
	from {
		opacity: 0;
	}
	to {
		opacity: 1;
	}
}


/* -------------------------------------
* drawer
------------------------------------- */
@media screen and (min-width: calc(1025px)) {
	.drawer-hamburger,
	.drawer-nav {
		display: none !important;
		background-color: #f0f0f1;
	}
}

/* Base
------------------------------------*/
.drawer-open {
	overflow: hidden !important;
}
.drawer-nav {
	position: fixed;
	z-index: 10000000;
	top: 0;
	overflow: hidden;
	width: 259px;
	height: 100%;
	color: #222;
	background-color: #fff;
}
.drawer-brand {
	font-size: 1.5rem;
	font-weight: bold;
	line-height: 3.75rem;
	display: block;
	padding-right: 0.75rem;
	padding-left: 0.75rem;
	text-decoration: none;
	color: #222;
}
.drawer-menu {
	margin: 0;
	padding: 0;
	list-style: none;
}
.drawer-menu-item {
	font-size: 1rem;
	display: block;
	padding: 0.75rem;
	text-decoration: none;
	color: #222;
}
.drawer-menu-item:hover {
	text-decoration: underline;
	color: #555;
	background-color: transparent;
}

/*! overlay */
.drawer-overlay {
	position: fixed;
	z-index: 1000000;
	top: 0;
	left: 0;
	display: none;
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, 0.2);
}
.drawer-open .drawer-overlay {
	display: block;
}

/* Nav
------------------------------------*/
.drawer-nav {
	padding-top: 19px;
}
.drawer__logo {
	width: 210px;
	margin: 0 auto 25px;
}
.drawer-covid {
	padding: 17px;
}
.drawer-covid__link {
	padding: 12px 0 16px;
	font-size: 1.4rem;
	font-family: source-han-serif-japanese, serif;
	font-weight: 400;
	letter-spacing: 0.05em;
	line-height: 1.28571;
	background-color: #eae7e4;
	text-align: center;
	display: block;
}
.drawer-covid__icon {
	width: 28px;
	height: 28px;
	margin: 0 auto 8px;
}

/* drawer-custom-menu */
.drawer-custom-menu-item {
	padding-left: 25px;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	font-size: 1.5rem;
	font-family: source-han-serif-japanese, serif;
	font-weight: 400;
	letter-spacing: 0.05em;
	height: 55px;
	color: #fff;
	padding-bottom: 2px;
}
.drawer-custom-menu-item__photo {
	width: 18px;
	margin-right: 13px;
}
.drawer-custom-menu li:nth-child(1) a {
	background-color: #e04b07;
}
.drawer-custom-menu li:nth-child(2) a {
	background-color: #3EB157;
}
.drawer-custom-menu li:nth-child(3) .drawer-custom-menu-item__photo {
	margin-top: 3px;
}
.drawer-custom-menu li:nth-child(3) a {
	background-color: #141414;
}
.drawer-custom-menu li:nth-child(4) a {
	background-color: #948170;
}

/* drawer-menu */
.drawer-menu {
	margin-bottom: 38px;
}
.drawer-menu-title {
	background-color: #141414;
	color: #fff;
	padding: 11px 0 14px;
	font-size: 1.5rem;
	font-family: source-han-serif-japanese, serif;
	font-weight: 400;
	letter-spacing: 0.13em;
	margin-bottom: 3px;
}
.drawer-menu > li:not(.drawer-menu-title) {
	padding: 0 17px;
}
.drawer-menu-item {
	white-space: nowrap;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	padding: 24px 0 26px 8px;
	font-size: 1.4rem;
	font-family: source-han-serif-japanese, serif;
	font-weight: 400;
	letter-spacing: 0.13em;
	position: relative;
	line-height: 1.28571;
	border-bottom: 1px solid rgba(128, 128, 128, 0.25);
}
.drawer-menu-item::before {
	content: '';
	position: absolute;
	width: 6px;
	height: 6px;
	border-top: 1px solid #dd4b07;
	border-right: 1px solid #dd4b07;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	top: 50%;
	margin-top: -6px;
}
.drawer-menu-item:hover {
	text-decoration: none;
}
.drawer-menu-item::before {
	right: 7px;
	margin-top: -5px;
}
.drawer-menu-item__photo {
	width: 22px;
	margin-right: 8px;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
}
.drawer-menu-item__photo img {
	-webkit-box-flex: 0;
	-webkit-flex: none;
	-ms-flex: none;
	flex: none;
}

/* drawer-banner-menu */
.drawer-banner-menu {
	margin-bottom: 21px;
	padding: 0 17px;
}
.drawer-banner-menu li:not(:last-child) {
	margin-bottom: 5px;
}
.drawer-banner-menu-item {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	justify-content: space-between;
	padding: 3px 3px 3px 18px;
	border: 1px solid rgba(128, 128, 128, 0.25);
	height: 50px;
}
.drawer-banner-menu-item__title {
	margin-top: 0.25em;
	font-size: 1.4rem;
	font-family: source-han-serif-japanese, serif;
	font-weight: 400;
	letter-spacing: 0.13em;
	line-height: 1.14286;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	text-align: left;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	-ms-flex-direction: column;
	flex-direction: column;
}
.drawer-banner-menu-item__title--en {
	font-size: 1rem;
	color: #e24b07;
	font-family: cormorant-garamond, Palatino, source-han-serif-japanese, serif;
	letter-spacing: 0.025em;
	line-height: 1.65;
}
.drawer-banner-menu-item__photo {
	width: 70px;
}


/* Top
------------------------------------*/
.drawer--top .drawer-nav {
	top: -100%;
	left: 0;
	width: 100%;
	height: auto;
	max-height: 100%;
	-webkit-transition: top 0.6s cubic-bezier(0.19, 1, 0.22, 1);
	transition: top 0.6s cubic-bezier(0.19, 1, 0.22, 1);
}
.drawer--top.drawer-open .drawer-nav {
	top: 0;
}
.drawer--top .drawer-hamburger,
.drawer--top.drawer-open .drawer-hamburger {
	right: 0;
}

/* Left
------------------------------------*/
.drawer--left .drawer-nav {
	left: -259px;
	-webkit-transition: left 0.6s cubic-bezier(0.19, 1, 0.22, 1);
	transition: left 0.6s cubic-bezier(0.19, 1, 0.22, 1);
}
.drawer--left.drawer-open .drawer-nav,
.drawer--left .drawer-hamburger,
.drawer--left.drawer-open .drawer-navbar .drawer-hamburger {
	left: 0;
}
.drawer--left.drawer-open .drawer-hamburger {
	left: 259px;
}
.drawer--left.drawer-open .drawer-nav,
.drawer--left .drawer-hamburger,
.drawer--left.drawer-open .drawer-navbar .drawer-hamburger {
	-ms-touch-action: auto !important;
	touch-action: auto !important;
	left: 0;
	overflow: auto;
	-webkit-overflow-scrolling: touch;
}

/* Right
------------------------------------*/
.drawer--right .drawer-nav {
	right: -259px;
	-webkit-transition: right 0.6s cubic-bezier(0.19, 1, 0.22, 1);
	transition: right 0.6s cubic-bezier(0.19, 1, 0.22, 1);
}
.drawer--right.drawer-open .drawer-nav,
.drawer--right .drawer-hamburger,
.drawer--right.drawer-open .drawer-navbar .drawer-hamburger {
	right: 0;
}
.drawer--right.drawer-open .drawer-hamburger {
	right: 259px;
}

/* Hamburger
------------------------------------*/
.drawer-hamburger {
	position: fixed;
	z-index: 10000000;
	top: 0;
	display: block;
	width: 90px;
	height: 57px;
	padding: 0;
	padding-right: 28px;
	padding-left: 28px;
	-webkit-transition: all 0.6s cubic-bezier(0.19, 1, 0.22, 1);
	transition: all 0.6s cubic-bezier(0.19, 1, 0.22, 1);
	-webkit-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
	border: 0;
	outline: 0;
	background-color: #dd4b07;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
.drawer-hamburger:hover {
	cursor: pointer;
	background-color: #dd4b07;
}
.drawer-hamburger-icon {
	position: relative;
	display: block;
	margin-top: 12px;
}
.drawer-hamburger-icon,
.drawer-hamburger-icon:before,
.drawer-hamburger-icon:after {
	width: 33px;
	height: 1px;
	-webkit-transition: all 0.6s cubic-bezier(0.19, 1, 0.22, 1);
	transition: all 0.6s cubic-bezier(0.19, 1, 0.22, 1);
	background-color: rgba(255, 255, 255, 0.5);
}
.drawer-hamburger-icon:before,
.drawer-hamburger-icon:after {
	position: absolute;
	top: -7px;
	left: 0;
	content: ' ';
}
.drawer-hamburger-icon:after {
	top: 7px;
}
.drawer-hamburger-text {
	font-size: 1.4rem;
	font-family: cormorant-garamond, Palatino, source-han-serif-japanese, serif;
	font-weight: 500;
	letter-spacing: 0.025em;
	color: #fff;
	padding-top: 12px;
	display: inline-block;
}

.drawer-open .drawer-hamburger-icon {
	background-color: transparent;
}
.drawer-open .drawer-hamburger-icon:before,
.drawer-open .drawer-hamburger-icon:after {
	top: 0;
}
.drawer-open .drawer-hamburger-icon:before {
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	width: 25px;
	margin-left: 4px;
}
.drawer-open .drawer-hamburger-icon:after {
	width: 25px;
	margin-left: 4px;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
.drawer-open .drawer-hamburger-line {
	display: none;
}

@media screen and (min-width: calc(1025px)) {
	.drawer-hamburger-line {
		display: none;
	}
}

/* accessibility
------------------------------------*/
/*!
* Only display content to screen readers
* See: http://a11yproject.com/posts/how-to-hide-content
*/
.sr-only {
	position: absolute;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	width: 1px;
	height: 1px;
	margin: -1px;
	padding: 0;
	border: 0;
}

/*!
* Use in conjunction with .sr-only to only display content when it's focused.
* Useful for "Skip to main content" links; see http://www.w3.org/TR/2013/NOTE-WCAG20-TECHS-20130905/G1
* Credit: HTML5 Boilerplate
*/
.sr-only-focusable:active,
.sr-only-focusable:focus {
	position: static;
	overflow: visible;
	clip: auto;
	width: auto;
	height: auto;
	margin: 0;
}

/* Sidebar
------------------------------------*/
.drawer--sidebar {
	background-color: #fff;
}
.drawer--sidebar .drawer-contents {
	background-color: #fff;
}

@media (min-width: 64em) {
	.drawer--sidebar .drawer-hamburger {
		display: none;
		visibility: hidden;
	}
	.drawer--sidebar .drawer-nav {
		display: block;
		-webkit-transform: none;
		transform: none;
		position: fixed;
		width: 12.5rem;
		height: 100%;
	}
	/*! Left */
	.drawer--sidebar.drawer--left .drawer-nav {
		left: 0;
		border-right: 1px solid #ddd;
	}
	.drawer--sidebar.drawer--left .drawer-contents {
		margin-left: 12.5rem;
	}
	/*! Right */
	.drawer--sidebar.drawer--right .drawer-nav {
		right: 0;
		border-left: 1px solid #ddd;
	}
	.drawer--sidebar.drawer--right .drawer-contents {
		margin-right: 12.5rem;
	}
	/*! container */
	.drawer--sidebar .drawer-container {
		max-width: 48rem;
	}
}

@media (min-width: 75em) {
	.drawer--sidebar .drawer-nav {
		width: 16.25rem;
	}
	.drawer--sidebar.drawer--left .drawer-contents {
		margin-left: 16.25rem;
	}
	.drawer--sidebar.drawer--right .drawer-contents {
		margin-right: 16.25rem;
	}
	/*! container */
	.drawer--sidebar .drawer-container {
		max-width: 60rem;
	}
}

/* Navbar
------------------------------------*/
.drawer--navbarTopGutter {
	padding-top: 3.75rem;
}
.drawer-navbar .drawer-navbar-header {
	border-bottom: 1px solid #ddd;
	background-color: #fff;
}
.drawer-navbar {
	z-index: 102;
	top: 0;
	width: 100%;
}

/*! .drawer-navbar modifier */
.drawer-navbar--fixed {
	position: fixed;
}
.drawer-navbar-header {
	position: relative;
	z-index: 102;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	width: 100%;
	height: 3.75rem;
	padding: 0 28px;
	text-align: center;
}
.drawer-navbar .drawer-brand {
	line-height: 3.75rem;
	display: inline-block;
	padding-top: 0;
	padding-bottom: 0;
	text-decoration: none;
}
.drawer-navbar .drawer-brand:hover {
	background-color: transparent;
}
.drawer-navbar .drawer-nav {
	padding-top: 3.75rem;
}
.drawer-navbar .drawer-menu {
	padding-bottom: 7.5rem;
}

@media (min-width: 64em) {
	.drawer-navbar {
		height: 3.75rem;
		border-bottom: 1px solid #ddd;
		background-color: #fff;
	}
	.drawer-navbar .drawer-navbar-header {
		position: relative;
		display: block;
		float: left;
		width: auto;
		padding: 0;
		border: 0;
	}
	.drawer-navbar .drawer-menu--right {
		float: right;
	}
	.drawer-navbar .drawer-menu li {
		float: left;
	}
	.drawer-navbar .drawer-menu-item {
		line-height: 3.75rem;
		padding-top: 0;
		padding-bottom: 0;
	}
	.drawer-navbar .drawer-hamburger {
		display: none;
	}
	.drawer-navbar .drawer-nav {
		position: relative;
		left: 0;
		overflow: visible;
		width: auto;
		height: 3.75rem;
		padding-top: 0;
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
	}
	.drawer-navbar .drawer-menu {
		padding: 0;
	}
	/*! dropdown */
	.drawer-navbar .drawer-dropdown-menu {
		position: absolute;
		width: 16.25rem;
		border: 1px solid #ddd;
	}
	.drawer-navbar .drawer-dropdown-menu-item {
		padding-left: 28px;
	}
}

/* Dropdown
------------------------------------*/
.drawer-dropdown .drawer-menu-item::before {
	-webkit-transform: none;
	transform: none;
	border-right: none;
	width: 11.5px;
	margin-top: -1px;
	right: 4px;
}
.drawer-dropdown .drawer-menu-item.on::after {
	border: none;
}
.drawer-dropdown .drawer-menu-item::after {
	content: '';
	margin-top: 1px;
	position: absolute;
	right: 9px;
	border-right: 1px solid #e24b07;
	height: 11px;
	width: 1px;
}
.drawer-dropdown-menu {
	display: none;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	width: 100%;
	margin: 0;
	background-color: #fff;
	padding: 10px 0 12px;
	border-bottom: 1px solid rgba(128, 128, 128, 0.25);
}
.drawer-dropdown-menu > li {
	width: 100%;
	list-style: none;
}
.drawer-dropdown-menu-item {
	display: block;
	font-family: source-han-serif-japanese, serif;
	font-size: 1.4rem;
	font-weight: 400;
	letter-spacing: 0.1em;
	line-height: 1.14286;
	color: #282828;
	text-align: left;
	text-decoration: none;
	padding: 10px 0 10px 38px;
}
.drawer-dropdown-menu-item:hover {
	text-decoration: underline;
	color: #555;
	background-color: transparent;
}

/*! open */
.drawer-dropdown.open > .drawer-dropdown-menu {
	display: block;
}

/*! drawer-caret */
.drawer-dropdown .drawer-caret {
	display: inline-block;
	width: 0;
	height: 0;
	margin-left: 4px;
	-webkit-transition: opacity .2s ease, -webkit-transform .2s ease;
	transition: opacity .2s ease, -webkit-transform .2s ease;
	transition: transform .2s ease, opacity .2s ease;
	transition: transform .2s ease, opacity .2s ease, -webkit-transform .2s ease;
	-webkit-transform: rotate(0deg);
	transform: rotate(0deg);
	vertical-align: middle;
	border-top: 4px solid;
	border-right: 4px solid transparent;
	border-left: 4px solid transparent;
}

/*! open */
.drawer-dropdown.open .drawer-caret {
	-webkit-transform: rotate(180deg);
	transform: rotate(180deg);
}

/* style-drawer-case
------------------------------------*/
.style-drawer-case-link {
	display: grid;
	grid-template-columns: 30% 1fr;
	gap: 16px;
	padding: 8px;
	align-items: center;
	position: relative;
	font-family: source-han-serif-japanese, serif;
	font-weight: 400;
	background-color: #f0f0f1;
}
.style-drawer-case-link:before {
	content: "";
	position: absolute;
	width: 8px;
	height: 8px;
	right: 26px;
	border-top: 1px solid #dd4b07;
	border-right: 1px solid #dd4b07;
	transform: rotate(45deg) translateY(-50%);
	top: 50%;
	z-index: 1;
}
.style-drawer-case-link .text {
	text-align: left;
	font-weight: 500;
}
.style-drawer-case-link .image {
	width: 100%;
	height: auto;
	display: block;
}
.style-drawer-case-link .image > img {
	width: 100%;
	height: auto;
	display: block;
	aspect-ratio: 1 / 1;
	object-fit: cover;
	overflow: hidden;
}

/* Container
------------------------------------*/
.drawer-container {
	margin-right: auto;
	margin-left: auto;
}

@media (min-width: 64em) {
	.drawer-container {
		max-width: 60rem;
	}
}

@media (min-width: 75em) {
	.drawer-container {
		max-width: 70rem;
	}
}



.consul-tbl {
	border-collapse: collapse;
	width: 100%;
}

.consul-tbl__text > * {
	padding: 22px 8px;
	width: 10%;
	text-align: center;
	vertical-align: middle;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	word-break: break-all;
}

.consul-tbl__text th {
	text-align: center;
	width: 30%;
}

.consul-tbl__text td {
	border-left: 1px solid rgba(120, 120, 120, 0.25);
}

.consul-tbl__text--narrow {
	padding: 8px 2px 7px;
	letter-spacing: 0;
}

.consul-tbl__text--open {
	color: #e24b07;
}

.consul-tbl__body > * {
	border-top: 1px solid rgba(120, 120, 120, 0.25);
}

@media screen and (max-width: 1024px) {
	.consul-tbl__text > * {
		font-size: 1.4rem;
		padding: 14px 4px;
		width: 10%;
	}
	.consul-tbl__text th {
		width: 20%;
	}
}

@media screen and (max-width: 767px) {
	.consul-tbl__text > * {
		padding: 14px 2px;
		width: 8%;
		font-size: 1.4rem;
		letter-spacing: 0;
	}
	.consul-tbl__text th {
		text-align: center;
		width: 23%;
	}
	.consul-tbl__text--narrow {
		-webkit-transform: scale(0.7, 1);
		transform: scale(0.7, 1);
		white-space: nowrap;
		letter-spacing: -1px;
		display: block;
	}
	.consul-tbl__text--open {
		color: #e24b07;
		font-size: 1rem;
	}
	.consul-tbl__head td {
		padding: 4px 0;
	}
	.consul-tbl__body > * {
		border-top: 1px solid rgba(120, 120, 120, 0.25);
	}
}

/* =====================================
■ コンバージョン
===================================== */
.conversion {
	background: url(/wp-content/uploads/contact-bg.jpg) no-repeat top center;
	background-size: cover;
	padding: 77px 0 88px;
	position: relative;
}
.conversion .inner {
	display: flex;
	justify-content: space-between;
	align-items: center;
	column-gap: 25px;
	max-width: 1124px;
	padding: 0 20px;
	margin: 0 auto;
	box-sizing: border-box;
}
.conversion .heading {
	font-family: "Zen Maru Gothic", sans-serif;
	font-weight: 700;
	font-style: normal;
	font-size: 33px;
	letter-spacing: 0.05em;
	line-height: 1.58;
	color: #fff;
	margin-bottom: 19px;
	position: relative;
}
.conversion .txt {
	font-family: "Zen Maru Gothic", sans-serif;
	font-weight: 700;
	font-style: normal;
	font-size: 18px;
	letter-spacing: 0.06em;
	line-height: 2.11;
	color: #fff;
}
.conversion .contactList {
	display: flex;
	justify-content: space-between;
	column-gap: 26px;
}
.conversion .contactList img {
	width: 100%;
}

@media screen and (min-width: 768px) {
	.conversion .txtWrap {
		max-width: 410px;
	}
	.conversion .contactWrap {
		width: 60%;
		max-width: 640px;
	}
}

@media screen and (max-width: 1023px) and (min-width: 847px) {
	.conversion .heading {
		font-size: 28px;
		margin-bottom: 15px;
	}
	.conversion .txt {
		font-size: 16px;
	}
	.conversion .contactWrap {
		width: 55%;
		max-width: 520px;
	}
	.conversion .contactList {
		column-gap: 20px;
	}
}

@media screen and (max-width: 846px) and (min-width: 768px) {
	.conversion {
		padding: 55px 0 68px;
	}
	.conversion .heading {
		font-size: 26px;
		margin-bottom: 10px;
	}
	.conversion .txt {
		font-size: 15px;
		line-height: 1.8;
	}
	.conversion .contactWrap {
		width: 55%;
		max-width: 520px;
	}
	.conversion .contactList {
		column-gap: 16px;
	}
}

@media screen and (max-width: 767px) {
	.conversion {
		background: url(/wp-content/uploads/contact-bg_sp.jpg) no-repeat top center;
		background-size: cover;
		padding: 26px 0 50px;
	}
	.conversion .inner {
		flex-wrap: wrap;
		padding: 0 30px;
	}
	.conversion .heading {
		font-size: 26px;
		letter-spacing: 0.1em;
		line-height: 1.42;
		margin-bottom: 15px;
	}
	.conversion .txt {
		font-size: 16px;
		letter-spacing: 0.1em;
		line-height: 1.75;
	}
	.conversion .contactWrap {
		margin-top: 30px;
	}
	.conversion .contactList {
		flex-wrap: wrap;
		row-gap: 4px;
	}
	.conversion .contactList li {
		width: 100%;
	}
}

@media screen and (max-width: 374px) {
	.conversion .inner {
		padding: 0 20px;
	}
	.conversion .heading {
		font-size: 24px;
		letter-spacing: 0.08em;
	}
	.conversion .txt {
		font-size: 15px;
		letter-spacing: 0.08em;
	}
}


/* =====================================
■ 診療時間表
===================================== */
.consul-tbl {
	border-collapse: collapse;
	width: 100%;
}
.consul-tbl__text > * {
	padding: 22px 8px;
	width: 10%;
	text-align: center;
	vertical-align: middle;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	word-break: break-all;
}
.consul-tbl__text th {
	text-align: center;
	width: 30%;
}
.consul-tbl__text td {
	border-left: 1px solid rgba(120, 120, 120, 0.25);
}
.consul-tbl__text--narrow {
	padding: 8px 2px 7px;
	letter-spacing: 0;
}
.consul-tbl__text--open {
	color: #e24b07;
}
.consul-tbl__text--open01 {
	color: #e24b07;
}
.consul-tbl__body > * {
	border-top: 1px solid rgba(120, 120, 120, 0.25);
}

@media screen and (max-width: 1024px) {
	.consul-tbl__text > * {
		font-size: 1.4rem;
		padding: 14px 4px;
		width: 10%;
	}
	.consul-tbl__text th {
		width: 20%;
	}
}

@media screen and (max-width: 767px) {
	.consul-tbl__text > * {
		padding: 14px 2px;
		width: 8%;
		font-size: 1.4rem;
		letter-spacing: 0;
	}
	.consul-tbl__text th {
		text-align: center;
		width: 23%;
	}
	.consul-tbl__text--narrow {
		-webkit-transform: scale(0.7, 1);
		transform: scale(0.7, 1);
		white-space: nowrap;
		letter-spacing: -1px;
		display: block;
	}
	.consul-tbl__text--open {
		color: #e24b07;
		font-size: 1rem;
	}
	.consul-tbl__text--open01 {
		color: #e24b07;
		font-size: 1em;
	}
	.consul-tbl__head td {
		padding: 4px 0;
	}
	.consul-tbl__body > * {
		border-top: 1px solid rgba(120, 120, 120, 0.25);
	}
}


/* =====================================
■ FOOTER
===================================== */
.style-scroll-hidden {
	display: none;
}
.footer {
	margin-top: 180px;
	position: relative;
}

/* Info */
.footer-info {
	padding: 74px 0 80px;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	background-color: #eae7e4;
}
.footer-info .form__btn {
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	font-family: source-han-serif-japanese, serif;
	font-weight: 400;
	font-size: 1.4rem;
	letter-spacing: 0.05em;
	width: 250px;
	height: 43px;
	background: #141414;
	color: #fff;
	white-space: nowrap;
	margin: 0 auto;
	padding-bottom: 4px;
}
.footer__logo {
	margin-bottom: 54px;
}
.footer__clinic {
	margin-left: 122px;
	text-align: left;
}
.footer__clinic .tel__item {
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	font-family: source-han-serif-japanese, serif;
	font-weight: 500;
	font-size: 2.5rem;
	letter-spacing: 0.025em;
	margin-bottom: 30px;
}
.footer__clinic .tel__item--icon {
	width: 18px;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	flex: none;
	margin-top: 2px;
	margin-right: 7px;
}
.footer__clinic-text {
	margin-bottom: 1.5em;
	line-height: 1.86667;
}
.footer__clinic-btn {
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	font-family: source-han-serif-japanese, serif;
	font-weight: 400;
	font-size: 1.4rem;
	letter-spacing: 0.05em;
	width: 200px;
	height: 40px;
	background: #e24b07;
	color: #fff;
	white-space: nowrap;
	letter-spacing: 0.08em;
	margin: 0 auto 1.5em;
}
.footer .consul-tbl {
	width: 630px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
.info__text {
	text-align: right;
	display: flex;
	justify-content: flex-end;
	font-size: 1em;
}

@media screen and (max-width: 1024px) {
	.footer__clinic {
		margin-left: 40px;
	}
	.footer .consul-tbl {
		width: 440px;
	}
}

@media screen and (max-width: 767px) {
	.footer {
		padding-bottom: 130px;
		margin-top: 95px;
		background-color: #141414;
	}
	.footer-info {
		padding: 39px 20px 140px;
		display: block;
	}
	.footer-info .form__btn {
		height: 55px;
		font-size: 1.5rem;
		padding-bottom: 3px;
		margin-bottom: 50px;
	}
	.footer__logo {
		width: 210px;
		margin: 0 auto 46px;
	}
	.footer__clinic {
		margin-left: 0;
		text-align: left;
	}
	.footer__clinic .tel__item {
		display: flex;
		align-items: center;
		justify-content: center;
		text-align: center;
		font-family: source-han-serif-japanese, serif;
		font-weight: 500;
		font-size: 2.1rem;
		letter-spacing: 0.025em;
		margin-bottom: 50px;
		justify-content: center;
	}
	.footer__clinic .tel__item--icon {
		width: 15px;
		display: flex;
		align-items: center;
		justify-content: center;
		text-align: center;
		flex: none;
		margin-top: 2px;
		margin-right: 7px;
	}
	.footer__clinic-text {
		margin-bottom: 1.5em;
		line-height: 1.73333;
		text-align: center;
	}
	.footer .consul-tbl {
		width: 100%;
	}
}

/* Menu */
.footer-menu {
	background-color: #141414;
	color: #fff;
	padding-top: 85px;
}
.footer-menu a {
	color: #fff;
	letter-spacing: 0.05em;
	font-size: 1.4rem;
	line-height: 1.42857;
}
.footer-menu a:hover {
	text-decoration: underline;
}
.footer-menu__group {
	margin: 0 auto;
	padding-bottom: 100px;
	width: 83%;
	display: -ms-grid;
	display: grid;
	grid-gap: 26px;
	-ms-grid-columns: 1fr 2fr 1fr;
	grid-template-columns: 1fr 2fr 1fr;
}
.footer-menu__link {
	font-size: 1.4rem;
	margin-bottom: 50px;
	display: inline-block;
	-ms-grid-column: 1;
	-ms-grid-column-span: 3;
	grid-column: 1/4;
}
.footer-menu__title {
	padding-bottom: 1em;
	border-bottom: 1px solid rgba(255, 255, 255, 0.25);
	margin-bottom: 1em;
	letter-spacing: 0.05em;
	font-size: 1.6rem;
}
.footer-menu__list--clm2 {
	/*-webkit-column-count: 2;
	column-count: 2;
	-webkit-column-fill: auto;
	column-fill: auto;*/
}
.footer-menu__list--clm2 .footer-menu__title {
	-webkit-column-span: all;
	column-span: all;
}
.footer-menu__item {
	margin-bottom: 1.4em;
}
.footer-menu__clm2{
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	grid-gap: 26px;
}

@media screen and (max-width: 767px) {
	.footer-menu {
		display: none;
	}
}

/* Navlist */
.footer-navlist {
	display: none;
}

@media screen and (max-width: 767px) {
	.footer-navlist {
		width: 100%;
		position: fixed;
		left: 0;
		bottom: 0;
		background: #fff;
		z-index: 50;
		display: -ms-grid;
		display: grid;
		-ms-grid-columns: (1fr) [5];
		grid-template-columns: repeat(5, 1fr);
		gap: 1px;
	}
	.footer-navlist__item {
		background-color: #141414;
		display: flex;
		flex-direction: column;
		align-items: center;
		height: 78px;
	}
	.footer-navlist__icon {
		flex: none;
		height: 16px;
		margin-bottom: 10px;
	}
	.footer-navlist__icon img {
		vertical-align: middle;
	}
	.footer-navlist a {
		display: block;
		width: 100%;
		height: 100%;
		color: #fff;
		font-size: 1rem;
		text-align: center;
		padding-top: 22px;
		box-sizing: border-box;
	}
}

/* Copyright */
.cr {
	background-color: #141414;
	text-align: center;
	color: #fff;
	font-size: 1rem;
	letter-spacing: 0.03em;
	line-height: 2.8;
	padding-bottom: 1em;
}

@media screen and (max-width: 767px) {
	.cr {
		line-height: 40px;
		padding-bottom: 0;
	}
}

/* -------------------------------------
* 追従バナー
------------------------------------- */
.page-top {
	position: fixed;
	right: 17px;
	/* bottom: 16px; */
	width: 55px;
	height: 55px;
	z-index: 50;
	bottom: calc(16px + 140px);
}
.page-sns {
	position: fixed;
	right: 17px;
	/* bottom: 75px; */
	width: 55px;
	height: 55px;
	z-index: 50;
	bottom: calc(75px + 140px);
}
.page-youtube {
	position: fixed;
	right: 17px;
	/* bottom: 135px; */
	width: 55px;
	height: 55px;
	z-index: 50;
	bottom: calc(135px + 140px);
}
.page-youtube:before {
	content: "";
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	border-radius: 50%;
	width: 55px;
	height: 55px;
	background-color: #4e4b49;
	z-index: 1;
}
.page-youtube a {
	display: flex;
	position: relative;
	z-index: 3;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 100%;
}
.page-youtube a:after {
	content: "";
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	border-radius: 50%;
	width: 16px;
	height: 16px;
	background-color: #fff;
	z-index: 1;
}
.page-youtube a > img {
	width: 40px;
	height: 40px;
	display: block;
	position: relative;
	z-index: 2;
}
#icon-sns img,
#icon-top img {
	width:100%; height:auto;
}

@media screen and (max-width: 767px) {
	.page-top {
		right: 15px;
		/* bottom: 80px; */
		width: 40px;
		height: 40px;
		bottom: calc(80px + 60px);
	}
	.page-sns {
		right: 15px;
		/* bottom: 124px; */
		width: 40px;
		height: 40px;
		bottom: calc(124px + 60px);
	}
	.page-youtube {
		right: 15px;
		/* bottom: 168px; */
		width: 40px;
		height: 40px;
		bottom: calc(168px + 60px);
	}
	.page-youtube:before {
		width: 40px;
		height: 40px;
	}
	.page-youtube a > img {
		width: 32px;
		height: 32px;
	}
}


/* =====================================
■ Main
===================================== */
.main {
	order: 2;
}

@media screen and (max-width: 1024px) and (min-width: 768px) {
	#main-wrap {
		width: 100%%;
		display: block;
		padding: 0 20px;
	}
}


/* =====================================
■ Sidebar
===================================== */
.aside {
	order: 1;
}
.aside-concept {
	background: -webkit-linear-gradient(135deg, #c38009 7.87%, #dd4b07 83.33%);
	background: linear-gradient(-45deg, #c38009 7.87%, #dd4b07 83.33%);
	height: 150px;
	display: flex;
	flex-direction: column;
	color: #fff;
	align-items: center;
	margin-bottom: 8px;
}
.aside-concept__photo {
	width: 35px;
	margin: 24px 0 8px;
}
.aside-concept__text {
	color: #fff;
	font-size: 2rem;
	font-family: source-han-serif-japanese, serif;
	font-weight: 400;
	letter-spacing: 0.1em;
}
.aside-specialty-menu__item {
	padding: 5px;
	border: 1px solid rgba(128, 128, 128, 0.25);
	height: 110px;
	margin-bottom: 8px;
	position: relative;
}
.aside-specialty-menu__item::before {
	content: '';
	position: absolute;
	width: 5px;
	height: 5px;
	border-top: 1px solid #dd4b07;
	border-right: 1px solid #dd4b07;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	top: 50%;
	margin-top: -5px;
}
.aside-specialty-menu__item::before {
	right: 17px;
}
.aside-specialty-menu__link {
	height: 100%;
	padding-left: 20px;
	border-left: 2px solid #e24b07;
	display: flex;
	justify-content: center;
	flex-direction: column;
	font-size: 1.8rem;
	font-family: source-han-serif-japanese, serif;
	font-weight: 400;
	letter-spacing: 0.1em;
}
.aside-specialty-menu__link--en {
	margin-top: 0.75em;
	font-size: 1.5rem;
	font-family: cormorant-garamond, Palatino, source-han-serif-japanese, serif;
	letter-spacing: 0.025em;
	color: #e24b07;
}
.aside-hospitality {
	height: 150px;
	background: url(/wp-content/uploads/aside_hospitality.jpg) no-repeat center right/cover;
	display: flex;
	align-items: center;
	padding-left: 27px;
	border: 1px solid rgba(128, 128, 128, 0.25);
	font-size: 1.8rem;
	font-family: source-han-serif-japanese, serif;
	font-weight: 400;
	letter-spacing: 0.1em;
	line-height: 1.38889;
	margin-bottom: 8px;
}
.aside-menu {
	padding-bottom: 37px;
	margin-bottom: 8px;
	background-color: #eae7e4;
}
.aside-menu li:not(:last-child) {
	margin-bottom: 1.7em;
}
.aside-menu__title {
	height: 80px;
	background-color: #141414;
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	font-size: 1.8rem;
	font-family: source-han-serif-japanese, serif;
	font-weight: 400;
	letter-spacing: 0.05em;
	position: relative;
}
.aside-menu__title::after {
	content: '';
	-webkit-clip-path: polygon(100% 0%, 0% 0%, 0% 100%);
	clip-path: polygon(100% 0%, 0% 0%, 0% 100%);
	position: absolute;
	opacity: 0.06;
	background: -webkit-gradient(
		linear,
		left top,
		right top,
		from(#ffffff),
		color-stop(11.55%, #d3d3d3),
		color-stop(29.86%, #939393),
		color-stop(47.39%, #5f5f5f),
		color-stop(63.62%, #353535),
		color-stop(78.3%, #181818),
		color-stop(90.91%, #060606),
		to(#000000)
	);
	background: -webkit-linear-gradient(
		left,
		#ffffff 0%,
		#d3d3d3 11.55%,
		#939393 29.86%,
		#5f5f5f 47.39%,
		#353535 63.62%,
		#181818 78.3%,
		#060606 90.91%,
		#000000 100%
	);
	background: linear-gradient(
		90deg,
		#ffffff 0%,
		#d3d3d3 11.55%,
		#939393 29.86%,
		#5f5f5f 47.39%,
		#353535 63.62%,
		#181818 78.3%,
		#060606 90.91%,
		#000000 100%
	);
	z-index: 1;
	height: 100%;
	width: 100%;
}
.aside-menu__item {
	padding-left: 27px;
	font-size: 1.4rem;
}
.aside-menu__item::before {
	content: '-';
	margin-right: 0.5em;
	position: relative;
	bottom: 2px;
}
.aside-menu a:hover {
	text-decoration: underline;
}
.aside-menu .indent {
	display: inline-block;
	margin-left: 42px;
	padding-top: 24px;
}
.aside-info__item {
	margin-bottom: 8px;
	border: 1px solid rgba(128, 128, 128, 0.25);
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	justify-content: space-between;
	padding: 5px 6px 5px 27px;
}
.aside-info__photo {
	width: 140px;
}
.aside-info__title {
	text-align: left;
	font-size: 1.8rem;
	font-family: source-han-serif-japanese, serif;
	font-weight: 400;
	letter-spacing: 0.1em;
	line-height: 1;
}
.aside-info__title--en {
	margin-top: 0.8em;
	display: block;
	font-size: 1.5rem;
	font-family: cormorant-garamond, Palatino, source-han-serif-japanese, serif;
	font-weight: 400;
	letter-spacing: 0.025em;
	color: #e24b07;
}
.aside-staffblog {
	display: block;
	height: 112px;
	margin-bottom: 8px;
}
.aside-contact {
	height: 180px;
	display: block;
	margin-bottom: 8px;
}
.aside-contact__inner {
	height: 100%;
	background: url(/wp-content/uploads/aside_bg01.jpg) no-repeat center center/cover;
	padding: 25px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
.aside-contact__title {
	height: 100%;
	background-color: rgba(255, 255, 255, 0.85);
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	flex-direction: column;
	font-size: 1.8rem;
	font-family: source-han-serif-japanese, serif;
	font-weight: 400;
	letter-spacing: 0.1em;
	line-height: 1.4;
}
.aside-contact__title--en {
	font-size: 1.5rem;
	font-family: cormorant-garamond, Palatino, source-han-serif-japanese, serif;
	letter-spacing: 0.025em;
	color: #e24b07;
}
.aside-consul-tbl {
	padding: 23px 11px 28px;
	border: 1px solid rgba(128, 128, 128, 0.25);
}
.aside-consul-tbl__title {
	text-align: center;
	font-size: 1.8rem;
	margin-bottom: 25px;
	font-family: source-han-serif-japanese, serif;
	font-weight: 400;
	letter-spacing: 0.1em;
}
.aside-consul-tbl .consul-tbl th {
	padding: 0;
	text-align: left;
	width: 25%;
}
.aside-consul-tbl .consul-tbl__head td {
	padding: 0;
}
.aside-consul-tbl .consul-tbl__body td {
	padding: 8px 0;
}
.aside-consul-tbl .consul-tbl__text {
	font-size: 1rem;
}
.aside-consul-tbl .consul-tbl__text--narrow {
	white-space: nowrap;
	letter-spacing: -1px;
	display: block;
}

@media screen and (max-width: 1024px) {
	.aside {
		display: none;
	}
}


/* =====================================
■Bread
===================================== */
.page-path {
	margin: 0 auto;
	padding: 16px 0 70px;
}
.page-path__list {
	width: min(100%, 1100px);
	margin: 0 auto;
}
.page-path__item {
	display: inline;
	font-size: 1.4rem;
}

@media screen and (max-width: 1024px) {
	.page-path {
		display: none;
	}
}


/* =====================================
■Elementor
===================================== */
/* -------------------------------------
* general
------------------------------------- */
#blogDetail .elementor-section.elementor-section-boxed > .elementor-container {
	padding: 0;
}
.elementor-column-gap-default > .elementor-row > .elementor-column > .elementor-element-populated,
.elementor-column-gap-default > .elementor-row > .elementor-column > .elementor-element-populated > .elementor-widget-wrap {
	padding: 0;
}

/* -------------------------------------
* 見出し
------------------------------------- */
.elementor-heading-title {
	padding: inherit;
	margin: inherit;
	line-height: inherit;
	font-weight: inherit;
}


/* =====================================
■Lum Lightbox
===================================== */
.lum-lightbox-inner img {
	height: 100%;
	width: auto;
}

@media screen and (max-width: 767px) {
	.lum-lightbox-inner img {
		width: 100%;
		height: auto;
	}
}