@charset "utf-8";
/* ---------------------------------------------------------------------------------
Copyright c　Neutral STYLE allright reserved 

HTML CSS Selectors pc_common 

$Revision: 2.0 $
--------------------------------------------------------------------------------- */

/*---------------------------------------------------------------------------------
font
--------------------------------------------------------------------------------- */
@font-face {
    font-family: 'function_LH_italic';
    src: url('font/FunctionPro-LightOblique-webfont.eot');
    src: url('font/FunctionPro-LightOblique-webfont.eot?#iefix') format('embedded-opentype'),
         url('font/FunctionPro-LightOblique-webfont.woff2') format('woff2'),
         url('font/FunctionPro-LightOblique-webfont.woff') format('woff'),
         url('font/FunctionPro-LightOblique-webfont.ttf') format('truetype'),
         url('font/FunctionPro-LightOblique-webfont.svg#function_prolight_oblique') format('svg');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'function_italic';
    src: url('font/FunctionPro-MediumOblique-webfont.eot');
    src: url('font/FunctionPro-MediumOblique-webfont.eot?#iefix') format('embedded-opentype'),
         url('font/FunctionPro-MediumOblique-webfont.woff2') format('woff2'),
         url('font/FunctionPro-MediumOblique-webfont.woff') format('woff'),
         url('font/FunctionPro-MediumOblique-webfont.ttf') format('truetype'),
         url('font/FunctionPro-MediumOblique-webfont.svg#function_promedium_oblique') format('svg');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'function_medium';
    src: url('font/FunctionPro-Medium-webfont.eot');
    src: url('font/FunctionPro-Medium-webfont.eot?#iefix') format('embedded-opentype'),
         url('font/FunctionPro-Medium-webfont.woff2') format('woff2'),
         url('font/FunctionPro-Medium-webfont.woff') format('woff'),
         url('font/FunctionPro-Medium-webfont.ttf') format('truetype'),
         url('font/FunctionPro-Medium-webfont.svg#function_promedium') format('svg');
    font-weight: normal;
    font-style: normal;
}
.function_LH_italic {
    font-family: 'function_LH_italic';
}
.function_italic {
    font-family: 'function_italic';
}
.function_medium {
    font-family: 'function_medium';
}

/*---------------------------------------------------------------------------------
初期設定
--------------------------------------------------------------------------------- */
:root {
  --min-width:1366px;
  --font-sans: "Noto Sans JP", sans-serif;
  --font-serif: "Noto Serif", serif;
  --font-en: "Jost", sans-serif;
}
*, *::before, *::after {
  box-sizing: border-box;
}

body {
  margin: 0px;
  padding: 0px;
  font-family: var(--font-sans);
  font-size: 16px;
  font-weight: 400;
  color: #505050;
  -webkit-text-size-adjust: none; /* フォントサイズ自動調整 */
  font-optical-sizing: auto;
  font-feature-settings: "palt";
  text-decoration-skip-ink: none;
}

h1,h2,h3,h4,h5,h6,
ul,ol,dl,
p,li,dt,dd,th,td,em,strong,blockquote {
  margin: 0px;
  padding: 0px;
  border: 0;
  vertical-align: baseline;
  font-weight: inherit;
}
em {
  font-style: normal;
}

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, main {
  display: block;
  margin: 0px;
  padding: 0px;
}
p,dd,li {
  list-style: none;
}
em,strong {
  font-weight: inherit;
}
table {
  border-collapse: collapse;
}

img {
  vertical-align:top;
  max-width: 100%;
  height: auto;
}
.fit-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
a img {
  border: none;
}
a:link,
a:visited,
a:hover,
a:active {
  color: inherit;
  text-decoration: none;
  outline: none;
}
a,.btn {
	transition: 0.2s ease-in-out;
  cursor: pointer;
}
a:hover,
.btn:hover {
  opacity: 0.5;
}

.none {
  display: none!important;
}

.nolink {
  pointer-events: none;
}
.anchor {
  display: block;
  width: 100%;
  height: 0;
  position: relative;
  top: -150px;
}

.fit-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  font-family: 'object-fit: cover;';
}
.js_accordion_head {
  cursor: pointer;
}

/*---------------------------------------------------------------------------------
エフェクト
--------------------------------------------------------------------------------- */

/*ファーストビューエフェクト*/
.fv-effect {
  opacity: 0;
  transition : all 500ms 300ms ease-out;
}
.loaded .fv-effect {
  opacity: 1;
  transform: translate(0,0px)!important;
}

/* 画面外にいる状態 */
.effect,.fade-effect,.d-effect {
  opacity : 0;
 transform: translate(0,50px);
}
.no-fade {
  opacity: 1.0;
  transform: translate(0,0px)!important;
}
.fade-drop {
  transform: translate(0,-50px);
}
.fade-rize {
  transform: translate(0,50px);
}
.fade-left-in {
  transform: translate(-50px,0);
}
.fade-right-in {
  transform: translate(50px,0);
}
.fade-in {
  transform: translate(0,0);
}

/* 画面内に入った状態 */
.effect-on {
  opacity: 1.0;
  transform: translate(0,0px)!important;
  transition : all 300ms 300ms ease-out;
}

/*アニメーション*/
.delay0.effect-on {
  transition-delay:0ms;
}

/*---------------------------------------------------------------------------------
ヘッダー
--------------------------------------------------------------------------------- */
#header-wrapper {
  width: 100%;
  min-width: var(--min-width);
  height: 120px;
  background-color:#FCF8F4;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 21;
}
.site-header {
  display: flex;
  align-items: center;
  align-content: center;
  flex-wrap: wrap;
  width: 1166px;
  height: 80px;
  margin: 0 auto;
}
.site-header__logo {
  width: 245px;
  margin: 0 438px 0 100px;
}
.site-header__logo a {
  display: block;
  line-height: 1;
}
.site-header__tel {
  width: 166px;
  line-height: 1;
  font-size: 18px;
  font-weight: 500;
}
.site-header__tel span {
  display: block;
  padding-top: 6px;
  font-size: 12px;
  font-weight: 400;
}
.site-header__line {
  height: 100%;
  border-left: 1px solid #DEDEDE;
  padding: 16px 0 0 26px;
}
.site-header__line a {
  display: flex;
  align-items: center;
  align-content: center;
  font-size: 18px;
  font-weight: 500;
  line-height: 1;
}
.site-header__line a img {
  width: 50px;
  margin-right: 18px;
}

.site-nav {
  display: flex;
  justify-content: center;
  align-items: center;
  align-content: center;
  width: 100%;
  height: 40px;
  background-color: #FAF2E8;
  border-top: 1px solid #DEDEDE;
}
.site-nav a {
  margin: 0 37px;
  font-size: 14px;
  line-height: 1;
  letter-spacing: 0.1em;
}


/*---------------------------------------------------------------------------------
コンテンツ
--------------------------------------------------------------------------------- */
#contents-wrapper {
  width: 100%;
  min-height: 100vh;
  min-width: var(--min-width);
  overflow:hidden;
  position: relative;
  z-index: 2;
}

/*---------------------------------------------------------------------------------
フッター
--------------------------------------------------------------------------------- */
#footer-wrapper {
  width: 100%;
  min-width: var(--min-width);
  padding: 40px 0 200px;
  background-color: #F4F4F4;
  position: relative;
  z-index: 1;
}
.site-footer {
  width: 1166px;
  margin: 0 auto;
}
.site-footer__name {
  width: 270px;
  margin: 0 auto 32px;
}
.site-footer__name span {
  display: block;
  margin-bottom: 12px;
  font-family: var(--font-en);
  font-size: 22px;
  font-weight: 300;
  line-height: 1;
  text-align: center;
}
.site-footer__add {
  margin-bottom: 90px;
  font-size: 16px;
  line-height: 2;
  font-style: normal;
  text-align: center;
}
.site-footer-nav {
  display: flex;
  justify-content: center;
}
.site-footer-nav div {
  margin: 0 33px;
}
.site-footer-nav__ttl {
  padding: 0 7px 12px;
  border-bottom: 1px solid #c9a073;
  margin-bottom: 20px;
  font-size: 14px;
  line-height: 1;
  text-align: center;
}
.site-footer-nav__list {}
.site-footer-nav__list li {
  padding-bottom: 16px;
  font-size: 12px;
  line-height: 1;
  text-align: center;
  
}


/*---------------------------------------------------------------------------------
V1
--------------------------------------------------------------------------------- */
.shadow {
	position: relative;
}
.shadow:before {
	width: 100%;
	min-width: 900px;
	height: 10px;
	background-image: url(../img/common/shadow.png);
	background-repeat: repeat-x;
	content:"";
	z-index: 10;
	position: absolute;
	top: 0;
}

#topic_path {
	width: 100%;
	min-width: 900px;
	position: absolute;
	top: 170px;
	left: 0;
	z-index: 2;
}
#topic_path div {
	width: 800px;
	margin-left: auto;
	margin-right: auto;
}
#topic_path div a {
	display: inline-block;
	font-weight: bold;
	padding-right: 20px;
}


#mv {
	width: 100%;
	min-width: 900px;
}
#mv img {
	width: 100%;
	height: auto;
}

/*STAFF*/
#staff-wrap {
	width: 100%;
	min-width: 900px;
	padding-bottom: 40px;
}
#staff-wrap h2 {
	padding-top: 25px;
	padding-bottom: 25px;
	text-align: center;
	position: relative;
	font-size: 27px;
	line-height: 1;
	font-family: 'function_italic', 'ヒラギノ角ゴ ProN W3','Hiragino Kaku Gothic ProN','メイリオ',Meiryo,'ＭＳ Ｐゴシック','MS PGothic',sans-serif;
}
#staff-wrap h2:after {
	display: block;
	width: 344px;
	border-bottom: 1px solid #BABABA;
	position: absolute;
	left: 50%;
	bottom: 50px;
	margin-left: -172px;
	content:"";
}
#staff-wrap h2 .jp {
	display: block;
	padding-top: 20px;
	font-size: 15px;
}
#staff-wrap .inner {
	display: flex;
  flex-wrap: wrap;
	width: 824px;
	margin-left: auto;
	margin-right: auto;
}
.staff-box {
	width: 190px;
	padding: 0 8px 20px;
	/*float: left;*/
}
/*.staff-box:nth-of-type(4n+1) {
	clear: left;
}*/
.staff-box a {
	display: block;
	padding-top: 12px;
	padding-bottom: 12px;
	border: 3px solid #fff;
}
.staff-box a:hover {
	border: 3px solid #FECC99;
	-ms-filter: "alpha( opacity=100 )";
	opacity:1;	
}
.staff-box h3 {
	width: 170px;
	margin: 0 auto 8px;
}
.staff-box h3 img {
	width: 164px;
	height: 164px;
	border-radius: 82px;
	border: 3px solid #F7B47F;
}
.staff-box .name {
	font-size: 15px;
	line-height: 1;
	text-align: center;
	padding-bottom: 7px;
	border-bottom: 1px solid #E7E7E7;
}
.staff-box .job {
	padding-top: 8px;
	font-size: 15px;
	line-height: 1;
	text-align: center;
}
.staff-box .day {
	font-size: 13px;
	text-align: center;
	padding-top: 20px;
}
.staff-box .txt {
	padding: 30px 5px 0px;
	font-size: 12px;
	line-height: 1.5;
}


/*Our Menu*/
#menu-wrap {
	width: 100%;
	min-width: 900px;
	padding-bottom: 20px;
}
#menu-wrap h2 {
	padding-top: 25px;
	padding-bottom: 12px;
	text-align: center;
	position: relative;
	font-size: 27px;
	line-height: 1;
	font-family: 'function_italic', 'ヒラギノ角ゴ ProN W3','Hiragino Kaku Gothic ProN','メイリオ',Meiryo,'ＭＳ Ｐゴシック','MS PGothic',sans-serif;
}
#menu-wrap h2:after {
	display: block;
	width: 344px;
	border-bottom: 1px solid #BABABA;
	position: absolute;
	left: 50%;
	bottom: 38px;
	margin-left: -172px;
	content:"";
}
#menu-wrap h2 .jp {
	display: block;
	padding-top: 20px;
	font-size: 15px;
}
#menu-wrap .inner {
	overflow:hidden;
	width: 824px;
	margin-left: auto;
	margin-right: auto;
}
.menu-box {
	width: 190px;
	padding: 0 8px 20px;
	float: left;
}
.menu-box a {
	display: block;
	padding-top: 12px;
	padding-bottom: 12px;
	border: 3px solid #fff;
}
.menu-box a:hover {
	border: 3px solid #FECC99;
	-ms-filter: "alpha( opacity=100 )";
	opacity:1;	
}
.menu-box h3 {
	width: 170px;
	margin: 0 auto 8px;
}
.menu-box h3 img {
	width: 164px;
	height: 164px;
	border-radius: 82px;
	border: 3px solid #F7B47F;
}
.menu-box .name {
	font-size: 15px;
	line-height: 1.2;
	font-weight: bold;
	text-align: center;
	padding-bottom: 0px;
	border-bottom: 1px solid #E7E7E7;
}
.menu-box .txt {
	padding: 8px 5px 0px;
	font-size: 12px;
	line-height: 1.3;
}


/*COUPON*/
#coupon_wrap {
	width: 100%;
	min-width: 900px;
	height: 430px;
	padding-top: 20px;
	background-image: url(../img/common/bg_coupon.jpg);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
}
#coupon_wrap h2 {
	padding-bottom: 25px;
	margin-bottom: 25px;
	text-align: center;
	position: relative;
	font-size: 27px;
	line-height: 1;
	font-family: 'function_italic', 'ヒラギノ角ゴ ProN W3','Hiragino Kaku Gothic ProN','メイリオ',Meiryo,'ＭＳ Ｐゴシック','MS PGothic',sans-serif;
}
#coupon_wrap h2:after {
	display: block;
	width: 344px;
	border-bottom: 1px solid #BABABA;
	position: absolute;
	left: 50%;
	bottom: 50px;
	margin-left: -172px;
	content:"";
}
#coupon_wrap h2 .jp {
	display: block;
	padding-top: 20px;
	font-size: 15px;
}

#coupon_wrap .inner {
	width: 700px;
	overflow:hidden;
	margin-left: auto;
	margin-right: auto;
}
#coupon_wrap .detail {
	width: 460px;
	float: right;
}
#coupon_wrap .detail p {
	font-size: 15px;

	padding-bottom: 30px;
}
#coupon_wrap .detail table {
	width: 100%;
}
#coupon_wrap .detail th {
	width: 110px;
	font-size: 15px;
	line-height: 1;
    font-family: 'function_italic';
}
#coupon_wrap .detail td {
	width: 350px;
	font-size: 15px;
	line-height: 1;
	padding-bottom: 15px;
}

#coupon_wrap .photo {
	width: 220px;
	float: left;
}
#coupon_wrap .photo img {
	width: 210px;
	border-radius: 105px;
	border: 5px solid #FFCCCC;	
}


/*ACCESS*/
#access_wrap {
	width: 100%;
	min-width: 900px;
	padding-top: 28px;
	padding-bottom: 45px;
	margin-left: auto;
	margin-right: auto;
}
#access_wrap h2 {
	padding-bottom: 25px;
	text-align: center;
	position: relative;
	font-size: 27px;
	line-height: 1;
	font-family: 'function_italic', 'ヒラギノ角ゴ ProN W3','Hiragino Kaku Gothic ProN','メイリオ',Meiryo,'ＭＳ Ｐゴシック','MS PGothic',sans-serif;
}
#access_wrap h2:after {
	display: block;
	width: 345px;
	border-bottom: 1px solid #BABABA;
	position: absolute;
	left: 50%;
	bottom: 50px;
	margin-left: -172px;
	content:"";
}
#access_wrap h2 .jp {
	display: block;
	padding-top: 20px;
	font-size: 15px;
}


#access_wrap #map {
	width: 706px;
	padding-bottom: 30px;
	text-align: center;
	margin-left: auto;
	margin-right: auto;
}
#access_wrap #map #gmap {
	border: 3px solid #000;
	width: 700px;
	height: 350px;
	margin-bottom: 5px;
}
#access_wrap #map a {
	font-size: 12px;
	line-height: 1;
	font-family: 'function_italic', 'ヒラギノ角ゴ ProN W3','Hiragino Kaku Gothic ProN','メイリオ',Meiryo,'ＭＳ Ｐゴシック','MS PGothic',sans-serif;
}

#access_wrap .add {
	text-align: center;
	padding-bottom: 30px;
	font-size: 22px;
	line-height: 1;
}

#access_wrap  .information {
	width: 494px;
	border: 3px solid #FFCCCC;
	margin-left: auto;
	margin-right: auto;
	padding-top: 12px;
	padding-bottom: 20px;
	line-height: 1;
}
#access_wrap  .information h3 {
	font-size: 11px;
	text-align: center;
	padding-bottom: 21px;
}
#access_wrap  .information .tel {
	font-size: 23px;
	text-align: center;
	color: #f50505;
	padding-bottom: 23px;
}
#access_wrap  .information .tel a {
	color: #f50505;
}
#access_wrap  .information .hour {
	font-size: 15px;
	text-align: center;
}
