@charset 'UTF-8';
/*normalize: http://necolas.github.io/normalize.css/*/
/* normalize.css 2012-07-07T09:50 UTC - http://github.com/necolas/normalize.css */
/* ==========================================================================
   HTML5 display definitions
   ========================================================================== */
/**
 * Correct `block` display not defined in IE 8/9.
 */
article,aside,details,figcaption,figure,footer,header,hgroup,main,nav,section,summary{
	display: block;
}
/**
 * Correct `inline-block` display not defined in IE 8/9.
 */
audio,canvas,video{
	display: inline-block;
}
/**
 * Prevent modern browsers from displaying `audio` without controls.
 * Remove excess height in iOS 5 devices.
 */
audio:not([controls]){
	display: none;
	height: 0;
}
/**
 * Address `[hidden]` styling not present in IE 8/9.
 * Hide the `template` element in IE, Safari, and Firefox < 22.
 */
[hidden],template{
	display: none;
}
/* ==========================================================================
   Base
   ========================================================================== */
/**
 * 1. Set default font family to sans-serif.
 * 2. Prevent iOS text size adjust after orientation change, without disabling
 *    user zoom.
 */
html{
	font-family: sans-serif; /* 1 */

	-webkit-text-size-adjust: 100%; /* 2 */
	    -ms-text-size-adjust: 100%; /* 2 */
}
/**
 * Remove default margin.
 */
body{
	margin: 0;
}
/* ==========================================================================
   Links
   ========================================================================== */
/**
 * Remove the gray background color from active links in IE 10.
 */
a{
	background: transparent;
}
/**
 * Address `outline` inconsistency between Chrome and other browsers.
 */
a:focus{
	outline: thin dotted;
}
/**
 * Improve readability when focused and also mouse hovered in all browsers.
 */
a:active,a:hover{
	outline: 0;
}
/* ==========================================================================
   Typography
   ========================================================================== */
/**
 * Address variable `h1` font-size and margin within `section` and `article`
 * contexts in Firefox 4+, Safari 5, and Chrome.
 */
h1,h2,h3,h4,p{
	font-size: 1em;
	margin: 0;
}
/**
 * Address styling not present in IE 8/9, Safari 5, and Chrome.
 */
abbr[title]{
	border-bottom: 1px dotted;
}
/**
 * Address style set to `bolder` in Firefox 4+, Safari 5, and Chrome.
 */
b,strong,.strong{
	font-weight: bold;
}
/**
 * Address styling not present in Safari 5 and Chrome.
 */
dfn,em,.em{
	font-style: italic;
}
/**
 * Address differences between Firefox and other browsers.
 */
hr{
	-webkit-box-sizing: content-box;
	        box-sizing: content-box;
	height: 0;
}
/*
 * proper formatting (http://blog.fontdeck.com/post/9037028497/hyphens)
*/
p{
	-webkit-hyphens: auto;
	        hyphens: auto;

	-epub-hyphens: auto;
	    -ms-hyphens: auto;
}
/*
 * Addresses margins set differently in IE6/7.
 */
pre{
	margin: 0;
}
/**
 * Correct font family set oddly in Safari 5 and Chrome.
 */
code,kbd,pre,samp{
	font-family: monospace, serif;
	font-size: 1em;
}
/**
 * Improve readability of pre-formatted text in all browsers.
 */
pre{
	white-space: pre-wrap;
}
/**
 * Set consistent quote types.
 */
q{
	quotes: '\201C' '\201D' '\2018' '\2019';
}
/**
 * Address inconsistent and variable font size in all browsers.
 */
q:before,q:after{
	content: '';
	content: none;
}
small,.small{
	font-size: 75%;
}
/**
 * Prevent `sub` and `sup` affecting `line-height` in all browsers.
 */
sub,sup{
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}
sup{
	top: -.5em;
}
sub{
	bottom: -.25em;
}
/* ==========================================================================
  Lists
========================================================================== */
/*
 * Addresses margins set differently in IE6/7.
 */
dl,menu,ol,ul{
	margin: 0;
}
dd{
	margin: 0;
}
/*
 * Addresses paddings set differently in IE6/7.
 */
menu{
	padding: 0 0 0 40px;
}
ol,ul{
	padding: 0;
	list-style-type: none;
}
/*
 * Corrects list images handled incorrectly in IE7.
 */
nav ul,nav ol{
	list-style: none;
	list-style-image: none;
}
/* ==========================================================================
  Embedded content
========================================================================== */
/**
 * Remove border when inside `a` element in IE 8/9.
 */
img{
	border: 0;
}
/**
 * Correct overflow displayed oddly in IE 9.
 */
svg:not(:root){
	overflow: hidden;
}
/* ==========================================================================
   Figures
   ========================================================================== */
/**
 * Address margin not present in IE 8/9 and Safari 5.
 */
figure{
	margin: 0;
}
/* ==========================================================================
   Forms
   ========================================================================== */
/**
 * Define consistent border, margin, and padding.
 */
fieldset{
	margin: 0 2px;
	padding: .35em .625em .75em;
	border: 1px solid #c0c0c0;
}
/**
 * 1. Correct `color` not being inherited in IE 8/9.
 * 2. Remove padding so people aren't caught out if they zero out fieldsets.
 */
legend{
	padding: 0; /* 2 */
	border: 0; /* 1 */
}
/**
 * 1. Correct font family not being inherited in all browsers.
 * 2. Correct font size not being inherited in all browsers.
 * 3. Address margins set differently in Firefox 4+, Safari 5, and Chrome.
 */
button,input,select,textarea{
	font-family: inherit; /* 1 */
	font-size: 100%; /* 2 */
	margin: 0; /* 3 */
}
/**
 * Address Firefox 4+ setting `line-height` on `input` using `!important` in
 * the UA stylesheet.
 */
button,input{
	line-height: normal;
}
/**
 * Address inconsistent `text-transform` inheritance for `button` and `select`.
 * All other form control elements do not inherit `text-transform` values.
 * Correct `button` style inheritance in Chrome, Safari 5+, and IE 8+.
 * Correct `select` style inheritance in Firefox 4+ and Opera.
 */
button,select{
	text-transform: none;
}
/**
 * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
 *    and `video` controls.
 * 2. Correct inability to style clickable `input` types in iOS.
 * 3. Improve usability and consistency of cursor style between image-type
 *    `input` and others.
 */
button,html input[type='button'],/* 1 */
input[type='reset'],input[type='submit']{
	cursor: pointer; /* 3 */

	-webkit-appearance: button; /* 2 */
}
/**
 * Re-set default cursor for disabled elements.
 */
button[disabled],html input[disabled]{
	cursor: default;
}
/**
 * 1. Address box sizing set to `content-box` in IE 8/9/10.
 * 2. Remove excess padding in IE 8/9/10.
 */
input[type='checkbox'],input[type='radio']{
	-webkit-box-sizing: border-box;
	        box-sizing: border-box; /* 1 */
	padding: 0; /* 2 */
}
/**
 * 1. Address `appearance` set to `searchfield` in Safari 5 and Chrome.
 * 2. Address `box-sizing` set to `border-box` in Safari 5 and Chrome
 *    (include `-moz` to future-proof).
 */
input[type='search']{
	-webkit-box-sizing: content-box; /* 2 */
	        box-sizing: content-box;

	-webkit-appearance: textfield; /* 1 */
}
/**
 * Remove inner padding and search cancel button in Safari 5 and Chrome
 * on OS X.
 */
input[type='search']::-webkit-search-cancel-button,input[type='search']::-webkit-search-decoration{
	-webkit-appearance: none;
}
/**
 * Remove inner padding and border in Firefox 4+.
 */
button::-moz-focus-inner,input::-moz-focus-inner{
	padding: 0;
	border: 0;
}
/**
 * 1. Remove default vertical scrollbar in IE 8/9.
 * 2. Improve readability and alignment in all browsers.
 */
textarea{
	overflow: auto; /* 1 */
	vertical-align: top; /* 2 */
}
/* ==========================================================================
   Tables
   ========================================================================== */
/**
 * Remove most spacing between table cells.
 */
table{
	border-spacing: 0;
	border-collapse: collapse;
}
*{
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}
.image-replacement,.ir{
	overflow: hidden;
	white-space: nowrap;
	text-indent: 100%;
}
.clearfix,.cf{
	zoom: 1;
}
.clearfix:before,.clearfix:after,.cf:before,.cf:after{
	display: table; 
	content: '';
}
.clearfix:after,.cf:after{
	clear: both;
}
/*
use the best ampersand
http://simplebits.com/notebook/2008/08/14/ampersands-2/
*/
span.amp{
	font-family: Baskerville,'Goudy Old Style',Palatino,'Book Antiqua',serif !important;
	font-style: italic;
}
:root{
	--color: #000;
	/*イージング*/
	--easeInOutSine: cubic-bezier(.445, .050, .550, .950);
}
/* ==========================================================================
   共通設定
========================================================================== */
html{
	font-size: 62.5%;
	overflow-y: scroll;

	-webkit-text-size-adjust: 100%;
	    -ms-text-size-adjust: 100%;
}
body{
	font-family: '游ゴシック','游ゴシック体', 'YuGothic M', YuGothic,'Hiragino Kaku Gothic ProN','メイリオ',Meiryo,sans-serif;
	font-size: 1.4rem;
	font-weight: 500;
	line-height: 1.4;
	width: 100%;
	min-width: 1105px;
	text-align: justify;
	text-justify: inter-ideograph;
	color: #000;
	color: var(--color);
	background: url('../../img/back.jpg') repeat;

	-webkit-font-feature-settings: 'pkna';
	        font-feature-settings: 'pkna';
}
img{
	max-width: 100%;
	height: auto;
	vertical-align: bottom;

	-webkit-backface-visibility: hidden;
	        backface-visibility: hidden;
}
a{
	text-decoration: none;
	color: #000;
	color: var(--color);
}
a:hover{
	opacity: .7;
}
.spShow{
	display: none;
}
.pcShow{
	display: inline-block;
}
.innerBox{
	max-width: 1100px;
	margin: 0 auto;
	padding: 0 10px;
}
/* ==========================================================================
   ヘッダー
========================================================================== */
.header{
	position: absolute;
	top: 0;
	left: 0;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display:         flex;
	width: 100%;
	padding: 34px 3.10345vw 0 2.34483vw;
	background: url('../../img/line.png') repeat-x top;

	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	-webkit-justify-content: space-between;
	        justify-content: space-between;
}
.header .logo{
	line-height: 1;

	-webkit-box-flex: 0;
	-webkit-flex: 0 1 166px;
	    -ms-flex: 0 1 166px;
	        flex: 0 1 166px;
}
.header .gNav{
	-webkit-box-flex: 0;
	-webkit-flex: 0 1 456px;
	    -ms-flex: 0 1 456px;
	        flex: 0 1 456px;
}
/* ==========================================================================
   メニュー
========================================================================== */
.gNav>ul{
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display:         flex;

	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	-webkit-justify-content: space-between;
	        justify-content: space-between;
}
.gNav>ul svg path{
	fill: #fff;
}
.gNav>ul a{
	position: relative;
	display: block;
	padding: 0 6px;
}
.gNav>ul a::after{
	display: block;
	width: 100%;
	height: 1px;
	margin-top: 7px;
	content: '';
	-webkit-transition: opacity .3s linear;
	        transition: opacity .3s linear;
	opacity: 0;
	background: #fff;
}
.gNav>ul a:hover{
	opacity: 1;
}
.gNav>ul a:hover::after{
	-webkit-transition: opacity .3s linear;
	        transition: opacity .3s linear;
	opacity: 1;
}
.gNav>ul li{
	line-height: 1;
	margin-right: 15px;
}
.gNav>ul li:nth-child(1){
	-webkit-box-flex: 0;
	-webkit-flex: 0 1 88px;
	    -ms-flex: 0 1 88px;
	        flex: 0 1 88px;
}
.gNav>ul li:nth-child(1) svg{
	height: 15px;
}
.gNav>ul li:nth-child(2){
	-webkit-box-flex: 0;
	-webkit-flex: 0 1 72px;
	    -ms-flex: 0 1 72px;
	        flex: 0 1 72px;
}
.gNav>ul li:nth-child(2) svg{
	height: 15px;
}
.gNav>ul li:nth-child(3){
	-webkit-box-flex: 0;
	-webkit-flex: 0 1 74px;
	    -ms-flex: 0 1 74px;
	        flex: 0 1 74px;
}
.gNav>ul li:nth-child(3) svg{
	height: 14px;
}
.gNav>ul li:nth-child(4){
	-webkit-box-flex: 0;
	-webkit-flex: 0 1 74px;
	    -ms-flex: 0 1 74px;
	        flex: 0 1 74px;
}
.gNav>ul li:nth-child(4) svg{
	height: 15px;
}
.gNav>ul li:nth-child(5){
	-webkit-box-flex: 0;
	-webkit-flex: 0 1 72px;
	    -ms-flex: 0 1 72px;
	        flex: 0 1 72px;
}
.gNav>ul li:nth-child(5) svg{
	height: 15px;
}
.gNav>ul li:nth-child(6){
	margin-right: 0;

	-webkit-box-flex: 0;
	-webkit-flex: 0 1 73px;
	    -ms-flex: 0 1 73px;
	        flex: 0 1 73px;
}
.gNav>ul li:nth-child(6) svg{
	height: 15px;
}
/* ==========================================================================
   footer
========================================================================== */
.footer{
	padding: 28px 0 53px;
	background: url('../../img/line.png') repeat-x bottom;
	background-color: #fff;
}
.footer h2{
	line-height: 1;
	width: 208px;
	margin: 0 auto;
}
.footer .copyright{
	font-size: 1.5rem;
	line-height: 1;
	margin-top: 15px;
	text-align: center;
}
/* ==========================================================================
   ホーム
========================================================================== */
.homePage .kv{
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display:         flex;
	height: 880px;
	margin-bottom: 35px;
	background: url('../../img/kv.jpg') no-repeat center bottom;
	background-color: #fff;
	background-size: cover;

	-webkit-align-items: center;
	        align-items: center;
	-webkit-box-align: center;
	-webkit-box-pack: center;
	-ms-flex-align: center;
	-ms-flex-pack: center;
	-webkit-justify-content: center;
	        justify-content: center;
}
.homePage .kv h2{
	-webkit-box-flex: 0;
	-webkit-flex: 0 2 432px;
	    -ms-flex: 0 2 432px;
	        flex: 0 2 432px;
}
.homePage .concept{
	min-height: 410px;
	padding-top: 64px;
	background: url('../../img/concept_back.png') no-repeat center center;
}
.homePage .concept h2{
	line-height: 1;
	margin-bottom: 13px;
	text-align: center;
}
.homePage .concept p{
	font-family: '游明朝', '游明体', YuMincho, 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN','Noto Serif Japanese', serif;
	font-size: 1.7rem;
	font-weight: 500;
	line-height: 2.26;
	text-align: center;
	letter-spacing: .2em;
}
.homePage .info{
	padding: 60px 0 70px;
	background: url('../../img/info_bk.jpg') no-repeat center center;
	background-size: cover;
}
.homePage .info h2{
	line-height: 1;
	margin-bottom: 65px;
	text-align: center;
}
.homePage .info>ul{
	max-width: 1080px;
	margin: 0 auto 45px;
	border-top: 1px solid #a8a8a9;
	border-bottom: 1px solid #a8a8a9;
}
.homePage .info>ul li{
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display:         flex;
	padding: 25px 20px;

	-webkit-align-items: center;
	        align-items: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
}
.homePage .info>ul li:not(:last-child){
	border-bottom: 1px dotted #a8a8a9;
}
.homePage .info>ul .date{
	font-family: 'Cormorant Garamond', serif;
	font-size: 2.2rem;
	font-weight: bold;
	line-height: 1;
	letter-spacing: .05em;
	color: #646464;

	-webkit-box-flex: 0;
	-webkit-flex: 0 0 145px;
	    -ms-flex: 0 0 145px;
	        flex: 0 0 145px;
}
.homePage .info>ul .entry{
	letter-spacing: .1em;
}
.homePage .cal{
	max-width: 1080px;
	margin: 0 auto;
}
.homePage .menu{
	padding: 64px 0 45px;
	background: url('../../img/menu_back.png') no-repeat center center;
	background-size: 100% 100%;
}
.homePage .menu figure{
	max-width: 1105px;
	text-align: center;
}
.homePage .style{
	padding: 68px 0 0;
}
.homePage .style h2{
	line-height: 1;
	max-width: 973px;
	margin: 0 auto 50px;
	text-align: center;
	background: url('../../img/style_line.png') no-repeat center center;
}
.homePage .style .slideWall{
	position: relative;
}
.homePage .style .swiper-container{
	max-width: 1017px;
	margin: 0 auto;
}
.homePage .style .swiper-button-next{
	right: 0;
	background-image: url('data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D\'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg\'%20viewBox%3D\'0%200%2027%2044\'%3E%3Cpath%20d%3D\'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z\'%20fill%3D\'%234d4d4d\'%2F%3E%3C%2Fsvg%3E');
}
.homePage .style .swiper-button-prev{
	left: 0;
	background-image: url('data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D\'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg\'%20viewBox%3D\'0%200%2027%2044\'%3E%3Cpath%20d%3D\'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z\'%20fill%3D\'%234d4d4d\'%2F%3E%3C%2Fsvg%3E');
}
.homePage .staff{
	margin-top: 67px;
	padding: 60px 0 71px;
	background: url('../../img/staff_back.png') no-repeat center center;
	background-size: 100% 100%;
}
.homePage .staff>h2{
	line-height: 1;
	max-width: 513px;
	margin: 0 auto 50px;
	text-align: center;
	background: url('../../img/staff_line.png') no-repeat center bottom;
}
.homePage .staff .innerBox{
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display:         flex;

	-webkit-align-items: center;
	        align-items: center;
	-webkit-box-align: center;
	-webkit-box-direction: reverse;
	-webkit-box-orient: horizontal;
	-webkit-box-pack: justify;
	-ms-flex-align: center;
	-webkit-flex-flow: row-reverse wrap;
	    -ms-flex-flow: row-reverse wrap;
	        flex-flow: row-reverse wrap;
	-ms-flex-pack: justify;
	-webkit-justify-content: space-between;
	        justify-content: space-between;
}
.homePage .staff .text{
	-webkit-box-flex: 0;
	-webkit-flex: 0 1 515px;
	    -ms-flex: 0 1 515px;
	        flex: 0 1 515px;
}
.homePage .staff .text h2{
	font-size: 1.7rem;
	font-weight: 500;
	line-height: 1;
	margin-bottom: 18px;
}
.homePage .staff .text p{
	font-size: 1.4rem;
	line-height: 2;
	letter-spacing: .18em;
}
.homePage .staff .text h2+p{
	line-height: 1;
	margin-bottom: 30px;
}
.homePage .staff .text dl{
	line-height: 1;
	margin-top: 50px;
	letter-spacing: .18em;
}
.homePage .staff .text dl dt{
	font-size: 1.4rem;
	margin-bottom: 15px;
}
.homePage .staff .text dl dd{
	font-size: 1.9rem;
}
.homePage .staff .img{
	-webkit-box-flex: 0;
	-webkit-flex: 0 1 539px;
	    -ms-flex: 0 1 539px;
	        flex: 0 1 539px;
}
.homePage .access{
	padding-top: 55px;
}
.homePage .access>h2{
	line-height: 1;
	max-width: 849px;
	margin: 0 auto 46px;
	text-align: center;
	background: url('../../img/access_line.png') no-repeat center 7px;
}
.homePage .access .inner{
	position: relative;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display:         flex;
	background: #fff;
	-webkit-box-shadow: 4px 4px 6px rgba(117, 67, 0,.4);
	        box-shadow: 4px 4px 6px rgba(117, 67, 0,.4);

	-webkit-align-items: center;
	        align-items: center;
	-webkit-box-align: center;
	-webkit-box-direction: reverse;
	-webkit-box-orient: horizontal;
	-webkit-box-pack: justify;
	-ms-flex-align: center;
	-webkit-flex-flow: row-reverse wrap;
	    -ms-flex-flow: row-reverse wrap;
	        flex-flow: row-reverse wrap;
	-ms-flex-pack: justify;
	-webkit-justify-content: space-between;
	        justify-content: space-between;
}
.homePage .access .text{
	-webkit-box-flex: 0;
	-webkit-flex: 0 1 500px;
	    -ms-flex: 0 1 500px;
	        flex: 0 1 500px;
}
.homePage .access .text h2{
	line-height: 1;
	margin-bottom: 25px;
}
.homePage .access .text ul{
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display:         flex;
}
.homePage .access .text li{
	font-size: 1.5rem;
	line-height: 1.53;
	letter-spacing: .18em;
}
.homePage .access .text li:first-child{
	position: relative;
	margin-right: 18px;
	padding-left: 33px;
}
.homePage .access .text li:first-child::before{
	position: absolute;
	top: -4px;
	left: 0;
	width: 20px;
	height: 30px;
	content: '';
	background: url('../../img/map.png') no-repeat center center;
	background-size: contain;
}
.homePage .access .text li:last-child{
	position: relative;
	padding-left: 47px;
}
.homePage .access .text li:last-child::before{
	position: absolute;
	top: -6px;
	left: 0;
	width: 37px;
	height: 29px;
	content: '';
	background: url('../../img/tel.png') no-repeat center center;
	background-size: contain;
}
.homePage .access .text dl{
	font-size: 1.2rem;
	line-height: 1;
	margin-top: 35px;
	letter-spacing: .18em;
}
.homePage .access .text dl dt{
	font-weight: bold;
	margin-bottom: 1em;
}
.homePage .access .text dl dd{
	margin-bottom: 1em;
}
.homePage .access .text .insta{
	position: absolute;
	right: 31px;
	bottom: 50px;
	display: block;
	width: 310px;
	height: 42px;
}
.homePage .access .img{
	-webkit-box-flex: 0;
	-webkit-flex: 0 1 540px;
	    -ms-flex: 0 1 540px;
	        flex: 0 1 540px;
}
.homePage .map{
	height: 338px;
	margin-top: 60px;
}
.homePage .map iframe{
	width: 100%;
	height: 100%;
}
/* ==========================================================================
   カレンダー
========================================================================== */
.simcal-default-calendar-grid .simcal-events{
	font-size: 1em;
}
/* ==========================================================================
   end
========================================================================== */
@media only screen and (max-width: 767px){
	html{
		font-size: 1.33333vw;
	}
	body{
		font-size: 2.6rem;
		width: 100%;
		min-width: 0;
		background: url('../../img/sp_back.jpg') repeat;
		background-size: 100% auto;
	}
	.spShow{
		display: inline-block;
	}
	.pcShow{
		display: none;
	}
	.innerBox{
		width: 100%;
		padding: 0;
	}
	.container{
		display: block;
	}
	/* ==========================================================================
   ヘッダー
========================================================================== */
	.header{
		width: 100%;
		padding: 3.33333vw 4vw 0 3.46667vw;
		background: none;

		-webkit-align-items: center;
		        align-items: center;
		-webkit-box-align: center;
		-ms-flex-align: center;
	}
	.header .logo{
		-webkit-box-flex: 0;
		-webkit-flex: 0 1 26.13333vw;
		    -ms-flex: 0 1 26.13333vw;
		        flex: 0 1 26.13333vw;
	}
	.header .spBtn{
		-webkit-box-flex: 0;
		-webkit-flex: 0 1 9.6vw;
		    -ms-flex: 0 1 9.6vw;
		        flex: 0 1 9.6vw;
	}
	.header .spBtn button{
		padding: 0;
		border: none;
		outline: none;
		background: none;
	}
	/* ==========================================================================
   メニュー
========================================================================== */
	.gNav{
		position: fixed;
		z-index: 1000;
		top: 0;
		left: 0;
		display: none;
		overflow-y: auto;
		width: 100%;
		height: 100vh;
		padding: 20.26667vw 5.6vw 5.6vw;
		opacity: 0;
		background: #ffffea;
	}
	.gNav svg path{
		fill: #000;
	}
	.gNav>ul{
		display: block;
	}
	.gNav>ul a{
		position: relative;
		display: block;
		padding: 0;
	}
	.gNav>ul a::after{
		display: none;
	}
	.gNav>ul svg path{
		fill: #000;
	}
	.gNav>ul li{
		margin-right: auto;
		margin-left: auto;
	}
	.gNav>ul li:not(:last-child){
		margin-bottom: 17.33333vw;
	}
	.gNav>ul li:nth-child(1){
		width: 25.33333vw;
	}
	.gNav>ul li:nth-child(1) svg{
		height: auto;
	}
	.gNav>ul li:nth-child(2){
		width: 20.53333vw;
	}
	.gNav>ul li:nth-child(2) svg{
		height: auto;
	}
	.gNav>ul li:nth-child(3){
		width: 20.53333vw;
	}
	.gNav>ul li:nth-child(3) svg{
		height: auto;
	}
	.gNav>ul li:nth-child(4){
		width: 20.53333vw;
	}
	.gNav>ul li:nth-child(4) svg{
		height: auto;
	}
	.gNav>ul li:nth-child(5){
		width: 20.26667vw;
	}
	.gNav>ul li:nth-child(5) svg{
		height: auto;
	}
	.gNav>ul li:nth-child(6){
		width: 20.53333vw;
		margin-right: auto;
	}
	.gNav>ul li:nth-child(6) svg{
		height: auto;
	}
	.gNav .contact{
		margin-top: 13.33333vw;
	}
	.gNav .contact p{
		font-size: 3.0rem;
		line-height: 1;
		text-align: center;
	}
	.gNav .contact ul{
		margin-top: 5.06667vw;
	}
	.gNav .contact li:first-child{
		margin-bottom: 5.06667vw;
	}
	.gNav .closeBtn{
		position: absolute;
		top: 4.26667vw;
		right: 4.26667vw;
		width: 7.46667vw;
	}
	.gNav .closeBtn button{
		padding: 0;
		border: none;
		outline: none;
		background: none;
	}
	.menuOpen{
		display: block;
		-webkit-animation: menuFadeIn .5s cubic-bezier(.445, .050, .550, .950) 0s 1 forwards;
		-webkit-animation: menuFadeIn .5s var(--easeInOutSine) 0s 1 forwards;
		        animation: menuFadeIn .5s cubic-bezier(.445, .050, .550, .950) 0s 1 forwards;
		        animation: menuFadeIn .5s var(--easeInOutSine) 0s 1 forwards;
		opacity: 1;
	}
	.menuClose{
		-webkit-animation: menuFadeOut .4s cubic-bezier(.445, .050, .550, .950) 0s 1 forwards;
		-webkit-animation: menuFadeOut .4s var(--easeInOutSine) 0s 1 forwards;
		        animation: menuFadeOut .4s cubic-bezier(.445, .050, .550, .950) 0s 1 forwards;
		        animation: menuFadeOut .4s var(--easeInOutSine) 0s 1 forwards;
	}
	/* ==========================================================================
   footer
========================================================================== */
	.footer{
		padding: 4vw 0 8vw;
		background: url('../../img/sp_line.png') repeat-x bottom;
		background-color: #fff;
		background-size: 100% auto;
	}
	.footer h2{
		width: 28.53333vw;
	}
	.footer .copyright{
		font-size: 1em;
		margin-top: 2.26667vw;
	}
	/* ==========================================================================
   ホーム
========================================================================== */
	.homePage .kv{
		height: 100vh;
		margin-bottom: 6vw;
		background: url('../../img/sp_kv.jpg') no-repeat center center;
		background-size: cover;
	}
	.homePage .kv h2{
		-webkit-box-flex: 0;
		-webkit-flex: 0 2 57.6vw;
		    -ms-flex: 0 2 57.6vw;
		        flex: 0 2 57.6vw;
	}
	.homePage .concept{
		width: 92.53333vw;
		min-height: 87.2vw;
		margin: 0 auto;
		padding-top: 9.6vw;
		background: url('../../img/sp_concept_back.png') no-repeat center center;
		background-size: contain;
	}
	.homePage .concept h2{
		line-height: 1;
		width: 23.2vw;
		margin: 0 auto 7.33333vw;
	}
	.homePage .concept p{
		font-size: 2.3rem;
		line-height: 1.94;
		text-align: center;
	}
	.homePage .concept h2+p{
		line-height: 1;
		margin-bottom: 6.66667vw;
	}
	.homePage .info{
		padding: 8vw 0 9.33333vw;
		background: url('../../img/sp_info_bk.jpg') no-repeat center center;
		background-size: cover;
	}
	.homePage .info h2{
		width: 88.13333vw;
		margin: 0 auto 7.33333vw;
	}
	.homePage .info>ul{
		width: 86.66667vw;
		margin-bottom: 5.33333vw;
		border-top: .26667vw solid #a8a8a9;
		border-bottom: .26667vw solid #a8a8a9;
	}
	.homePage .info>ul li{
		display: block;
		padding: 2.4vw 0;
	}
	.homePage .info>ul li:not(:last-child){
		border-bottom: .26667vw dotted #a8a8a9;
	}
	.homePage .info>ul .date{
		font-size: 2.4rem;
		display: block;
		margin-bottom: .3em;
	}
	.homePage .info>ul .entry{
		letter-spacing: .1em;
	}
	.homePage .info .cal{
		width: 86.66667vw;
	}
	.homePage .menu{
		padding: 7.06667vw 0 7.46667vw;
		background: url('../../img/sp_menu_back.png') no-repeat center center;
		background-size: 100% 100%;
	}
	.homePage .menu figure{
		width: 87.6vw;
		padding: 0;
	}
	.homePage .style{
		padding-top: 6.13333vw;
	}
	.homePage .style h2{
		width: 85.33333vw;
		margin: 0 auto 5.73333vw;
		background: url('../../img/sp_style_line.png') no-repeat center center;
		background-size: 100% auto;
	}
	.homePage .style h2 img{
		width: 26.26667vw;
	}
	.homePage .style .slideWall{
		position: relative;
	}
	.homePage .style .swiper-container{
		width: 73.06667vw;
		margin: 0 auto;
	}
	.homePage .style .swiper-button-next,.homePage .style .swiper-button-prev{
		top: 50%;
		width: 10vw;
		height: 44.4vw;
		margin: 0;
		-webkit-transform: translateY(-50%);
		        transform: translateY(-50%);
	}
	.homePage .style .swiper-button-next{
		right: 0;
		background-image: url('../../img/sp_next.png');
		background-size: cover;
	}
	.homePage .style .swiper-button-prev{
		left: 0;
		background-image: url('../../img/sp_prev.png');
		background-size: cover;
	}
	.homePage .staff{
		margin-top: 7.2vw;
		padding: 6.4vw 0 8vw;
		background: url('../../img/sp_staff_back.png') no-repeat center center;
		background-size: 100% 100%;
	}
	.homePage .staff>h2{
		width: 64.13333vw;
		max-width: none;
		margin: 0 auto 6vw;
		background: url('../../img/sp_staff_line.png') no-repeat center bottom;
		background-size: 100% auto;
	}
	.homePage .staff>h2 img{
		width: 26.53333vw;
	}
	.homePage .staff .innerBox{
		display: -webkit-box;
		display: -webkit-flex;
		display: -ms-flexbox;
		display:         flex;
		width: 86.66667vw;

		-webkit-align-items: flex-start;
		        align-items: flex-start;
		-webkit-box-align: start;
		-webkit-box-direction: reverse;
		-webkit-box-orient: vertical;
		-webkit-box-pack: center;
		-ms-flex-align: start;
		-webkit-flex-flow: column-reverse;
		    -ms-flex-flow: column-reverse;
		        flex-flow: column-reverse;
		-ms-flex-pack: center;
		-webkit-justify-content: center;
		        justify-content: center;
	}
	.homePage .staff .text{
		-webkit-box-flex: 1;
		-webkit-flex: 1 1 auto;
		    -ms-flex: 1 1 auto;
		        flex: 1 1 auto;
	}
	.homePage .staff .text h2{
		font-size: 2.6rem;
		margin-bottom: 5.06667vw;
	}
	.homePage .staff .text p{
		font-size: 2.4rem;
		line-height: 1.75;
	}
	.homePage .staff .text h2+p{
		line-height: 1.75;
		margin-bottom: 4vw;
	}
	.homePage .staff .text dl{
		margin-top: 6.66667vw;
		text-align: right;
	}
	.homePage .staff .text dl dt{
		font-size: 2.0rem;
		margin-bottom: 2.4vw;
	}
	.homePage .staff .text dl dd{
		font-size: 2.5rem;
	}
	.homePage .staff .img{
		margin-bottom: 6.66667vw;

		-webkit-box-flex: 1;
		-webkit-flex: 1 1 auto;
		    -ms-flex: 1 1 auto;
		        flex: 1 1 auto;
	}
	.homePage .access{
		padding-top: 8vw;
	}
	.homePage .access>h2{
		width: 86.8vw;
		margin: 0 auto 6vw;
		background: url('../../img/sp_access_line.png') no-repeat center 1.73333vw;
		background-size: 100% auto;
	}
	.homePage .access>h2 img{
		width: 32.26667vw;
	}
	.homePage .access .inner{
		position: relative;
		display: -webkit-box;
		display: -webkit-flex;
		display: -ms-flexbox;
		display:         flex;
		width: 86.66667vw;
		margin: 0 auto;
		background: #fff;
		-webkit-box-shadow: 4px 4px 6px rgba(117, 67, 0,.4);
		        box-shadow: 4px 4px 6px rgba(117, 67, 0,.4);

		-webkit-align-items: flex-start;
		        align-items: flex-start;
		-webkit-box-align: start;
		-webkit-box-direction: reverse;
		-webkit-box-orient: vertical;
		-webkit-box-pack: center;
		-ms-flex-align: start;
		-webkit-flex-flow: column-reverse;
		    -ms-flex-flow: column-reverse;
		        flex-flow: column-reverse;
		-ms-flex-pack: center;
		-webkit-justify-content: center;
		        justify-content: center;
	}
	.homePage .access .text{
		padding: 5.33333vw 4vw;

		-webkit-box-flex: 1;
		-webkit-flex: 1 1 auto;
		    -ms-flex: 1 1 auto;
		        flex: 1 1 auto;
	}
	.homePage .access .text h2{
		width: 45.06667vw;
		margin-bottom: 4.66667vw;
	}
	.homePage .access .text ul{
		display: -webkit-box;
		display: -webkit-flex;
		display: -ms-flexbox;
		display:         flex;
	}
	.homePage .access .text li{
		font-size: 2.4rem;
		line-height: 1;
		letter-spacing: .18em;
	}
	.homePage .access .text li:first-child{
		margin-right: 0;
		padding-left: 4vw;
	}
	.homePage .access .text li:first-child::before{
		position: absolute;
		top: -1.06667vw;
		left: 0;
		width: 2.93333vw;
		height: 4.4vw;
	}
	.homePage .access .text dl{
		font-size: 2.4rem;
		display: -webkit-box;
		display: -webkit-flex;
		display: -ms-flexbox;
		display:         flex;
		margin: 5.33333vw 0 4.66667vw;

		-webkit-box-direction: normal;
		-webkit-box-orient: horizontal;
		-webkit-flex-flow: row wrap;
		    -ms-flex-flow: row wrap;
		        flex-flow: row wrap;
	}
	.homePage .access .text dl dt{
		font-weight: bold;
		margin-bottom: .75em;

		-webkit-box-flex: 0;
		-webkit-flex: 0 1 7em;
		    -ms-flex: 0 1 7em;
		        flex: 0 1 7em;
	}
	.homePage .access .text dl dd{
		margin-bottom: .75em;

		-webkit-box-flex: 1;
		-webkit-flex: 1 1 calc(100% - 7em);
		    -ms-flex: 1 1 calc(100% - 7em);
		        flex: 1 1 calc(100% - 7em);
	}
	.homePage .access .text dl .last{
		margin-bottom: 0;
	}
	.homePage .access .text .insta{
		position: static;
		display: block;
		width: 100%;
		height: auto;
		margin-top: 3.46667vw;
	}
	.homePage .access .img{
		-webkit-box-flex: 1;
		-webkit-flex: 1 1 auto;
		    -ms-flex: 1 1 auto;
		        flex: 1 1 auto;
	}
	.homePage .map{
		height: 66.66667vw;
		margin-top: 7.06667vw;
	}
	/* ==========================================================================
   カレンダー
========================================================================== */
	.simcal-default-calendar-grid .simcal-events{
		font-size: 1em;
	}
	.simcal-events,.simcal-event-title{
		display: block !important;
	}
	.simcal-tooltip-content,.simcal-events-dots{
		display: none !important;
	}
	/*end*/
}
/* ==========================================================================
  アニメーション
========================================================================== */
@-webkit-keyframes menuFadeIn{
	0%{
		opacity: 0;
	}
	100%{
		opacity: 1;
	}
}
@keyframes menuFadeIn{
	0%{
		opacity: 0;
	}
	100%{
		opacity: 1;
	}
}
@-webkit-keyframes menuFadeOut{
	0%{
		opacity: 1;
	}
	99%{
		opacity: 0;
	}
	100%{
		display: none;
		opacity: 0;
	}
}
@keyframes menuFadeOut{
	0%{
		opacity: 1;
	}
	99%{
		opacity: 0;
	}
	100%{
		display: none;
		opacity: 0;
	}
}